| philcha on Dec 23, 2005 at 3:36:52 AM I decided so long ago not to use drop-down / fly-out menus that I'd forgotten why I don't like them. Here's what I think are the big disadvantages of drop-down menus (laid out horizontally across the page) - In the pure CSS versions, the lower-level menus always offset in the same direction from their parent items, usually to the right. This can put the user in a no-win situation where a low-level menu is off past the right side of the page but the user can't use the horizontal scroll bar because when he / she tries the menu collapses and the horizontal scroll bar disappears. Try viewing this example after reducing the width of your browser window and you'll see what I mean.
- DHTML (Javascript-driven) drop-down menus can calculate where they are and offset lower-level menus back into the screen (as Windows menus do), but:
- If the user has disabled Javascript, the drop-down functionality doesn't work. Then you have to create a links page for each menu item which contains a sub-menu.
- The code is complex, so it takes a while to load and is difficult to maintain.
Menus arranged vertically down the left edge of the page (so sub-menus appear to the right of thier parents and are oriented vertically) can have a similar problem with scrolling down past the bottom of the window. If you want to present a menu that's so big it needs to be able to expand and collapse, I recommend a tree menu (works like Windows Explorer or many email programs) down one side of the page - see css-discuss
This type of menu appears fully expanded if Javascript is disabled.
|