Pages

Friday 11 July 2014

Vertical menubar with submenus using HTML, CSS

Vertical MenuBar: Following code is used to Create vertical menu bar. It is created using plain HTML and CSS. Here I used plain HTML/HTML5 and CSS to create the browser compatible vertical menu bar. also I created the menu , submenu and two level submenus also. Also used some css to highlight the selected menu.

<html> <head> </head> <!-- STYLE--> <style> nav { display: block; text-align: center; } nav ul { margin: 0; padding:0; list-style: none; } .nav a { display:block; background: #111; color: #fff; text-decoration: none; padding: 0.8em 1.8em; text-transform: uppercase; font-size: 80%; letter-spacing: 2px; text-shadow: 0 -1px 0 #000; position: relative; } .nav{ vertical-align: top; display: inline-block; box-shadow: 1px -1px -1px 1px #000, -1px 1px -1px 1px #fff, 0 0 6px 3px #fff; border-radius:6px; } .nav li { position: relative; } .nav > li { float: left; border-bottom: 4px #aaa solid; margin-right: 1px; } .nav > li > a { margin-bottom: 1px; box-shadow: inset 0 2em .33em -0.5em #000064; } .nav > li:hover, .nav > li:hover > a { border-bottom-color: 33CCFF; } .nav li:hover > a { color:33CCFF; } .nav > li:first-child { border-radius: 4px 0 0 4px; } .nav > li:first-child > a { border-radius: 4px 0 0 0; } .nav > li:last-child { border-radius: 0 0 4px 0; margin-right: 0; } .nav > li:last-child > a { border-radius: 0 4px 0 0; } .nav li li a { margin-top: 1px; } .nav li a:first-child:nth-last-child(2):before { content: ""; position: absolute; height: 0; width: 0; border: 5px solid transparent; top: 50% ; right:5px; } /* submenu positioning*/ .nav ul { position: absolute; white-space: nowrap; border-bottom: 5px solid 33CCFF; z-index: 1; left: -99999em; } .nav > li:hover > ul { left: auto; margin-top: 5px; min-width: 100%; } .nav > li li:hover > ul { left: 100%; margin-left: 1px; top: -1px; } /* arrow hover styling */ .nav > li > a:first-child:nth-last-child(2):before { border-top-color: #aaa; } .nav > li:hover > a:first-child:nth-last-child(2):before { border: 5px solid transparent; border-bottom-color: 33CCFF; margin-top:-5px } .nav li li > a:first-child:nth-last-child(2):before { border-left-color: #aaa; margin-top: -5px } .nav li li:hover > a:first-child:nth-last-child(2):before { border: 5px solid transparent; border-right-color: 33CCFF; right: 10px; } </style> <body> <nav> <ul class="nav"> <li><a href="#">About</a></li> <li><a href="#">Reports</a> <ul> <li><a href="#">Daily</a></li> <li><a href="#">Weekly</a></li> <li><a href="#">Monthly</a></li> </ul> </li> <li><a href="#">Resources</a> <ul> <li><a href="#">Telephone</a></li> <li><a href="#">Computer</a> <ul> <li><a href="#">Keyboard</a></li> <li><a href="#">Mouse</a></li> <li><a href="#">Monitor</a></li> <li><a href="#">CPU</a></li> </ul> </li> <li><a href="#">Mobiles</a></li> <li><a href="#">Resources 3</a></li> </ul> </li> <li><a href="#">Download</a></li> <li><a href="#">Rants</a> <ul> <li><a href="#">item</a></li> <li><a href="#">item</a></li> <li><a href="#">item</a></li> <li><a href="#">item</a></li> </ul> </li> <li><a href="#">Contact</a></li> </ul> </nav></body> </html>

No comments:

Post a Comment