On 29/12/08 09:24, Ib Jensen wrote:
> The menu you have is extremely unusable - even
>> in the browsers in which it works. For that type of menu you really should
>> be using a scripted one.
>
> Any suggestions in this direction.
If you want something out of the box:
* Ultimate Drop Down Menu: http://www.udm4.com/
* Yahoo! User Interface menu: http://developer.yahoo.com/yui/menu/
The fundamentals of keyboard accessibility here are reasonably
straightforward.
If submenus are to be accessible with the keyboard, ensure you can open,
select, and close menu items with the keyboard. Using standard controls
(buttons and links) with "click" handlers is an easy way to achieve
this. Counter-intuitively any activation of a standard control (e.g. by
pressing enter with the keyboard, by speaking the control name to speech
recognition software, by pressing on a iPhone touchscreen) fires a
'click' event - it doesn't need to be a mouse.
Alternately, you might choose to make top-menu items hub pages. In that
case, you might choose to make the top-menu items simple links, with
hover listeners attached to show dropdowns. That way, when used from the
keyboard, you'd activate the links to go through to the hubpage and
delve further into the website from there.
Either way, ensure that "hidden" items either cannot be focused with the
keyboard or are made visible on focus; it's crucial that users
understand where focus is and what happens if (for example) they press
Enter. (You'll likely want to track focus and blur events for this.)
Personally, I'd avoid dropdowns for a content-driven website. I think
it's better to keep the options presented to the user simple, relevant,
and visible, rather than arrayed in all their complexity hidden behind
functionality that varies from site to site.
--
Benjamin Hawkes-Lewis
______________________________________________________________________
css-discuss [cs...@lists.css-discuss.org]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/