I'm making more progress on the site skinning. Today I integrated Scott Mitchell's skmMenu, an open source cross-browser Dynamic HTML menu for ASP.NET. It took me quite a bit of experimentation before I could get it to display the same as IE using Mozilla and Firefox when it was served from Mono. It looked pretty much the same right away in all browsers if served from IIS. I think it is a behavioural difference in mono's implementation of ASP.NET. The same code was rendering a rules="" attribute on the menu table on Mono but not under IIS on Windows. This was eliminating the border between menus when viewed in Mozilla or Firefox but not IE, when served from Mono. This was kind of mysterious because I could not find anywhere in the skmMenu code where it adds a "rules" attribute. I also experimented and Mono doesn't automatically add a "rules" attribute when you add an HtmlTable to the control tree. I never did figure out the cause, but I finally discovered that I could control it by explicitly setting the GridLines property of the menu.