
In the process of creating the new websites for ApacheCon US 2007 and OS Summit Asia 2007 I was tasked with taking the Flash navigation menu as seen on the ApacheCon EU and turn it into something more palatable for the Apache community. So I set out to create a new navigational menu that
For the ApacheCon US site, I took the following approach:
For the OS Summit Asia site, I wasn’t nearly as clever. I initially tried the same approach, but because this site has multiple div layers over the photo banner, the sliding menu approach simply didn’t work across browsers well. So I switched to a different form of sliding menu, where the transparent tagline section scrolls horizontally to the appropriate menu. I don’t have any fancy rewriting of the DOM in this case.
This scrolling menu works fine with one exception: it doesn’t gracefully degrade. At least not yet. I wanted to use the same trick I had for the sponsor marquee—start with an overflow set to scroll and change it to hidden with an extra Javascript loaded CSS. This meant that Javascript disabled clients could manually scroll through the menu. The problem with this approach is that Safari doesn’t respect the new CSS overflow property. Safari clients still get the scroll bars even with Javascript turned on and it looks horrible. I’m still thinking about how to fix this one. I could do some DOM rewriting again, but I believe I can come up with a better solution.
It’s still a shame how much effort cross-browser websites require, particularly if you want a validating, accessible site that’s more than just plain text. At least IE didn’t cause me too much trouble. Still, I tend to spend way too much time on trial and error, particularly with CSS. Maybe that’s just my own lack of skill as a web designer. Maybe it’s because I like to hand write my sites. Both sites were done completely in emacs, from the ruby to the html. I used Inkscape, the Gimp, and OmniGraffle for image work.
Commentary