web pulldown menus, accessibility, and internationalization

I'm designing a web site that uses pulldown menus. The natural choice 
for the menu content is an XHTML ordered list. This allows accessibility 
software to present the information as a list of links to those with 
visual impairments. With CSS and JavaScript I can style the list to 
appear as a horizontal pulldown menu.

The problem comes with internationalization. If someone views my site in 
a right-to-left language such as Arabic, everything should be 
right-aligned and flow from right to left---including the pulldown menu. 
I'm not aware of any CSS I can use to reorder the menu visually.

One choice is to simply generate the ordered list in reverse order if 
being used in a right-to-left context, but this causes accessibility 
problems---the list will appear in the wrong order in the content.

Another solution (the one I'm beginning to prefer) is to include the 
links as cells in a single-row table. This will allow the content to 
always provide the list in its correct logical order, but I can use the 
dir attribute to indicate that the items should be reversed if viewed in 
a right-to-left locale.

I know---I have a tendency to shudder at table abuse for layout, but 
here it seems to provide better content/presentation separation than 
alternatives.

Anybody have any better suggestions on how to encode a pulldown menu so 
that it will be accessible yet display it the way a right-to-left reader 
would expect it?

Thanks,

Garret

Received on Tuesday, 19 July 2005 01:17:31 UTC