Mobile Friendly Website

CSSPLAY

Doing it with style

CSS MENUSCSS only click/tap action multi-level menu with hover fallback

Date : 24th February 2014

For all modern browsers


This demo is too wide for your mobile screen.
Please view on a tablet or PC.



Information

Suitable for IE7+, Firefox, Safari, Chrome, Opera, iOS, Android OS, touch screens, tablets and smartphones.

With the increasing popularity of touch screen PCs running Windows 8/8.1 and Internet Explorer IE10/11 it is becoming necessary to find an answer to multi-level menus that use hover to navigate the menu structure.

IE10 and IE11 on touch-enabled devices do not have hover support but uses 'aria-haspopup' to simulate hover on these devices, see Internet Explorer Development Page.

Microsoft recommend that you do not use hover for navigation and instead use 'onclick' and have a page on the web Make your site touch-ready which has the following statement:

'With touch-based browsing, there is no equivalent to hovering the cursor over a webpage element. Therefore, any actions or content that are activated by hovering are potentially inaccessible to touch-based users. A common scenario with this problem is hover-activated submenus. To avoid this problem, don't use hover to hide content that a user can interact with. Instead, consider using the onclick event to toggle the visibility

To make it more difficult, IE10 and IE11 have different hover touch support, see Hover Touch Support.

So with this in mind I have produced the above menu without the need for jQuery/javascript that allows you to navigate a multi-level menu using just clicks/taps to open and close sub menus. It also has a fallback for IE7 and IE8 where hovers are still used to navigate the menu.

So click/tap the green '+' circles to open the associated sub menu, the sub menus will remain open until closed by a click/tap on the red '-' circle or click/tap on another green '+' circle. All list items can be links to other pages.


Because of all the time and effort spent in producing this demonstration I would ask that you respect my copyright.

  1. If you are using this on a personal web site then please retain the copyright comment in the stylesheet.
    A support donation is now required for this demonstration.
  2. If you are using this on a commercial web site, or as a paying job for a client, then please email me asking for permission - stu{at}cssplay.co.uk and again a support donation is required.
  3. If you are having problems integrating any of my demonstrations into your website then I now offer a service to fault find and correct any errors that you may have introduced. Please email me for more information.

Terms and Conditions

This demonstration can be used subject to the following terms and conditions.

  1. If you wish to use this demonstration in your website(s) please email me stu{at}cssplay.co.uk seeking permission.
  2. You may NOT place this demonstration on another site for others to download.
  3. You may NOT redistrubute or resell this demonstration.
  4. Users agree not to remove or edit the credit notice within the stylesheet, or claim that this demonstration is their own.
  5. Please see the Copyright statement above regarding the requirement for a support donation.

Support CSSPLAY

Your donations keep CSS PLAY running.
If your donation is for the use of a demo then please email me with the demo url after making your donation.


CUSTOM SEARCH

Facebook Twitter rss feed Facebook Fan Page