CSS - Dropdown Menu To Change Css
im trying out zope, and im trying to add a THEME section to my site like the themes on PHPNuke.. i have allready designed all the diffrent css sheets.. lets call thes 1.css 2.css 3.css 4.css how would i refrence the sheets in my header, and create a dropdown menu that would change the css layout?
Similar TutorialsHello; I'm trying to create a dropdown nav menu which drops down into in three levels. When I put a mouseover on my main nav, it changes it's image. However when I move away from it to a lower level of the menu it changes back. I want to main nav to stay the same image when I move down to lower levels of the menu. Thank you Here is my code: Code: body { font-family:verdana, arial, helvetica, sans-serif; font-size:76%; color:#000; padding:0; border:0; margin:0; background:#fff repeat-x 0 0px; text-align:left; } .clear { clear:both; } .play { font-family:"trebuchet ms", sans-serif; } .hiddenfromview { display:none; } /* control mouseover functions for main menu navs */ #menu1 a { width:129px; background: url("1.jpg") 0 0 no-repeat; } #menu1 a:hover { display:block; background: url("1-1.jpg") 0 0 no-repeat; } #menu2 a { width:129px; background: url("2.jpg") 0 0 no-repeat; } #menu2 a:hover { display:block; background: url("2-1.jpg") 0 0 no-repeat; } #menu3 a { width:129px; background: url("3.jpg") 0 0 no-repeat; } #menu3 a:hover { display:block; background: url("3-1.jpg") 0 0 no-repeat; } #menu4 a { width:129px; background: url("4.jpg") 0 0 no-repeat; } #menu4 a:hover { display:block; background: url("4-1.jpg") 0 0 no-repeat; } #menu5 a { width:127px; background: url("5.jpg") 0 0 no-repeat; } #menu5 a:hover { display:block; background: url("5-1.jpg") 0 0 no-repeat; } #menu6 a { width:129px; background: url("6.jpg") 0 0 no-repeat; } #menu6 a:hover { display:block; background: url("6-1.jpg") 0 0 no-repeat; } .menu { font-size:0em; position:relative; z-index:100; border-right:1px solid #000; } /* hack to correct IE5.5 faulty box model */ * html .menu { } /* remove all the bullets, borders and padding from the default list styling */ .menu ul { padding:0; margin:0; list-style-type:none; } .menu ul ul { } /* float the list to make it horizontal and a relative positon so that you can control the dropdown menu positon */ .menu li { float:left; position:relative; } /* style the links for the top level */ .menu a, .menu a:visited { display:block; font-size:11px; text-decoration:none; font:arial; font-weight:550; height:40px; border:0px solid #b17323; border-width:0px 0 0px 0px; padding-left:0px; line-height:0px; } /* style the second level background */ .menu ul ul a.drop, .menu ul ul a.drop:visited { background:#798fb1 url(arrow1.gif) bottom right no-repeat; } /* style the second level hover */ .menu ul ul a.drop:hover { background:#ffffff url(arrow1.gif) bottom right no-repeat; } .menu ul ul :hover > a.drop { background:#ffffff url(arrow2.gif) bottom right no-repeat; } /* style the third level background */ .menu ul ul ul a, .menu ul ul ul a:visited { background:#ffffff; color:#3d4058; width:160px; } /* style the third level hover */ .menu ul ul ul a:hover { background:#de9639; color:#ffffff; } /* hide the sub levels and give them a positon absolute so that they take up no room */ .menu ul ul { visibility:hidden; position:absolute; height:0; top:25px; left:0; border-top:1px solid #798fb1; } /* another hack for IE5.5 */ * html .menu ul ul { top:25px; t\op:25px; } /* position the third level flyout menu */ .menu ul ul ul { left:126px; top:-1px; } /* position the third level flyout menu for a left flyout */ .menu ul ul ul.left { left:-60px; } /* style the table so that it takes no ppart in the layout - required for IE to work */ .menu table { position:absolute; top:0; left:0; border-collapse:collapse; ; } /* style the second level links */ .menu ul ul a, .menu ul ul a:visited { background:#798fb1; color:#ffffff; height:auto; line-height:1em; padding:5px 10px; width:105px; border-width:0 1px 1px 1px; } /* style the second level links */ .menu2 ul ul a, .menu2 ul ul a:visited { background:#f4eed3; color:#b17323; height:auto; line-height:11em; padding:5px 10px; width:100px; border-width:0 1px 1px 1px; } /* yet another hack for IE5.5 */ * html .menu ul ul a, * html .menu ul ul a:visited { width:100px; w\idth:100px; } /* style the top level hover */ .menu a:hover, .menu ul ul a:hover { color:#3d4058; background:#ffffff; } .menu :hover > a, .menu ul ul :hover > a { color:#3d4058; background:#ffffff; } /* make the second level visible when hover on first level list OR link */ .menu ul li:hover ul, .menu ul a:hover ul { visibility:visible; } /* keep the third level hidden when you hover on first level list OR link */ .menu ul :hover ul ul { visibility:hidden; } /* make the third level visible when you hover over second level list OR link */ .menu ul :hover ul :hover ul { visibility:visible; } Hello! Very new to the forums, please excuse me if I make a mess of what you're used to here. Below is the code for my very simple drop-down menu. What I would like to do is simply change the padding so that the "buttons" of each subject have more space, vertically and horizontally, around the letters, so that I can fill my page from left to right and have it look even. Here's what it looks like now - Diaries of a Marksman Hunter (http://www.mmnassira.com) - if that helps. Each time I attempt to change any area after "padding", nothing changes at all. Any and all help is much appreciated, thank you. Code - Code: <style type="text/css" media="screen"> body{ behavior:url("csshover2.htc"); } .pd_menu_01 {float:left; padding:0; margin:0;color: #FFFFFF;background: #1f2320;width:100%; border:solid 1px #262927;clear:both;} /*Color navigation bar normal mode*/ .pd_menu_01 a, .pd_menu_01 a:visited { font-family:Arial, Helvetica, sans-serif; font-style:normal; font-weight:bold; font-size:12px; color: #FFFFFF; background-color: #1f2320; text-decoration: none; } .pd_menu_01 ul {list-style-type:none;padding:0; margin:0;} .pd_menu_01 ul li {float:left; position:relative; z-index:auto !important ; z-index:1000 ; border-right:solid 1px #262927; border-left:solid 1px #262927;} .pd_menu_01 ul li a {color: #FFFFFF;background: #1f2320;float:none !important ; float:left ; display:block; height:30px; line-height:30px; padding:0 10px 0 10px; text-decoration:none; } .pd_menu_01 ul li ul {display:none; border:none;color: #FFFFFF;background: #1f2320; width:1px} .pd_menu_01 ul li:hover a {background-color:#37591d; text-decoration:none; color:#FFFFff;} /*Color main cells hovering mode*/ .pd_menu_01 ul li:hover ul {display:block; position:absolute; z-index:999; top:29px; margin-top:1px; left:0;} .pd_menu_01 ul li:hover ul li a {display:block; width:12em; height:auto; line-height:1.3em; margin-left:-1px; padding:5px 10px 5px 10px; border-left:solid 1px #262927; border-bottom: solid 1px #262927; background-color:#37591d; color:#FFFFFF;} /*Color subcells normal mode*/ .pd_menu_01 ul li:hover ul li a:hover {background-color:#ffffff; text-decoration:none;color:#37591d;} /*Color subcells hovering mode*/ .pd_menu_01 ul li a:hover {background-color:#37591d; text-decoration:none;color:#FFFFff;} /*Color main cells hovering mode*/ .pd_menu_01 ul li a:hover ul {display:block; width:12em; position:absolute; z-index:999; top:29px; left:0; } .pd_menu_01 ul li ul li a:visited { background-color:#37591d; color:#FFFFFF;} /*Color subcells normal mode*/ .pd_menu_01 ul li a:hover ul li a {display:block; width:12em; height:1px; line-height:1.3em; padding:4px 16px 4px 16px; border-left:solid 1px #262927; border-bottom: solid 1px #262927; background-color:#37591d; color:#FFFFFF;} .pd_menu_01 ul li a:hover ul li a:hover {background-color:#ffffff; text-decoration:none;color:#37591d;} /*Color subcells hovering mode*/ </style> I'm using the suggestions of those on here and using the http://www.dynamicsitesolutions.com...2/#relatedLinks menu (I'm a little confused over what the differences are but that's the least of my problems) What I want is a 2nd level drop down menu, but I'm clueless on how to go about it..??? i'm having a problem with a couple attributes for my CSS dropdowns. view the page here (both CSS and XHTML are on the same page) specifically my .hoverBase:hover .hoverLaunch {} class which reads as such: Code: .hoverBase:hover .hoverLaunch { display:block; position:absolute; top:15px; left:-3px; width:70px; border:3px solid #000000; text-align: center; z-index: 30; } the problem is that IE6 will not display the .hoverLaunch class like FireBird does, in fact, it does not display at all. Another awesome feature of IE6 is that the :hover i have applied on the .hoverbase does not work either. Any help is appreciated. Thanks in advance. Hi I am trying to create a drop down menu on my existing design. Code: http://dfinnema.com/help How would I add a drop down to Page 3 menu that looks like this: Code: http://dfinnema.com/help/images/dropdown_active.png Without the menu: Code: http://dfinnema.com/help/images/dropdown.png Any Ideas / Suggestions? :| First I am using Dreamweaver MX2004. I am still new to CSS, have not used it much. Still using tables (yeah i know) for the layout. Mainly because when I've tried positioning in the past, IE doesn't display it right. Layers don't seem to work for me! What I'd like to know is: can I use CSS (the son of suckerfish dropdowns) for my drop down menu in a separate HTML file that would be saved as a library item? I'd like the nav separate so I can update it easily. Should I also use a separate CSS file that would only be associated with the nav? Is necessary to have an external css sheet, if it only applys to this nav? The nav would get dropped into a table row under the top banner. My issue is: will it get positioned right ? And will it view ok in IE??? Hope I explained this right. I fear that what I have already coded, would get messed up if I do this! But due to search engine optimization, I'd like to avoid a fully functioning javascript dropdown. If you have a better suggestion/usage for a dropdown horizontal nav, I'd appreciate your ideas! Thanks for the advice! Valerie Need some help with some dropdown menus. I have been reading many of the tutorials on other sites. I have come up with this code for my drop down menus: Code: .dropmenu { position: absolute; left: -1500px; visibility: visible; z-index: 101; float: left; width: 122px; border-width: 1px; border-style: solid; border-color: #BFBFBF; background-color: #FFFFFF; } .dropmenu ul { margin: 0; padding: 0; list-style-type: none; } .dropmenu li { display: inline; } .dropmenu a, .dropmenu a:visited, .dropmenu a:active { display: block; width: 120px; padding: 2px; margin: 1px; font-family: Arial; font-size: 10px; font-weight: normal; text-align: center; text-decoration: none; color: #000000; background-color: #D4D4D4; } .dropmenu a:hover { padding: 2px; margin: 1px; font-family: Arial; font-size: 10px; font-weight: normal; text-align: center; text-decoration: none; color: #000000; background-color: #BFBFBF; } but no matter how much I adjust settings that I know, I cannot get the dropdowns to show up below my original buttons, they always show up to the right hand side. Can someone here please point me in the right direction... I'm looking to add a drop down menu for my site but Instead of the menu dropping down i want it to go up and I found a few things about it but nothing really helped me I was wondering how can i get a css drop down to go up? sorry if this is the wrong forum to post on.. but i am clueless on this part i am going to be starting on the script soon just wanted to know how to code the script to make it go up Thank you Smackadoo Hi all -- I've used plenty of CSS in the past, but I'm currently working on a dropdown menu that is more challenging than I had anticipated. A few things I need to fix that I just cannot figure out: 1) The last <li> in the dropdown seems to be overlapping my border 2) I want to put at least 10px of padding on the left hand side of the dropdown menu 3) I need to turn the carrot in front of each menu item to #ff9900 4) Whenever I try to increase or decrease the space between menu items, it seems as though white lines appear between my menu items. In the interest of full disclosure, I found this CSS out somewhere on the web, and I've been trying to customize it since I didn't feel I had the knowledge to build it from scratch. Normally, I'd prefer to create something on my own, but limited time and knowledge prevented me from doing so this time around. Attached below are my HTML and CSS code. I tried to post a link, but the forum will not allow me. If you can offer any assistance, I would greatly appreciate it. Thanks in advance for your time! HTML CODE: Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Flyouts Page</title> <link rel="stylesheet" type="text/css" href="menu/menu_style.css" /> <body> <TABLE cellSpacing=0 cellPadding=0 width=610 border=0> <TBODY> <TR> <TD width="200" valign="top"> <div id="outside"> <ul id="navigation-1"> <li><IMG src="test_graphic.jpg" border=0></A> <ul class="navigation-2"> <li><a href="" title="Test 1" target="_self" ><strong>> Test 1</strong></a></li> <li><a href="" title="Test 2" target="_self" ><strong>> Test 2</strong></a></li> <li><a href="" title="Test 3" target="_self" ><strong>> Test 3</strong></a></li> <li><a href="" title="Test 4" target="_self" ><strong>> Test 4</strong></a></li> <li><a href="" title="Test 5" target="_self" ><strong>> Test 5</strong></a></li> <li><a href="" title="Test 6" target="_self" ><strong>> Test 6</strong></a></li> <li><a href="" title="Test 7" target="_self" ><strong>> Test 7</strong></a></li> </ul> </li> </ul> </div></TD> </TR> </TBODY></TABLE> </body> </html> CSS CODE: Code: #outside{ border:0px solid #000000; background:#ffffff; } #navigation-1 { padding:0px 0; margin:0px; list-style:none; width:200px; height:107px; border-top:0px solid #000000; border-bottom:0px solid #000000; font:normal 8pt Verdana, Arial, Helvetica; background:#ffffff; } #navigation-1 li { margin:0; padding:0; display:block; float:left; position:relative; width:200px; background:#ffffff; } #navigation-1 li a:link, #navigation-1 li a:visited { padding:4px 0; display:block; text-align:left; text-decoration:none; background:#ebf7f3; color:#000000; width:195px; background:#ffffff; } #navigation-1 li:hover a, #navigation-1 li a:hover, #navigation-1 li a:active { padding:4px 0; display:block; text-align:left; text-decoration:none; background:#ffffff; color:#000000; width:195px; } #navigation-1 li ul.navigation-2 { margin:0; padding:0px 0px 0; list-style:none; display:none; background:#ebf7f3; width:195px; position:absolute; top:110px; left:0px; border: 1px solid #cbccce; } #navigation-1 li:hover ul.navigation-2 { display:block; width:198px; } /*the individual menu items*/ #navigation-1 li ul.navigation-2 li { width:170px; height:18px; clear:left; font-size: 10px; font-family:Arial, Helvetica, sans-serif; } #navigation-1 li ul.navigation-2 li a:link, #navigation-1 li ul.navigation-2 li a:visited { clear:left; background:#ebf7f3; padding:4px 0px -4px 5px; width:170px; border:none; position:relative; z-index:1000; } #navigation-1 li ul.navigation-2 li:hover a, #navigation-1 li ul.navigation-2 li a:active, #navigation-1 li ul.navigation-2 li a:hover { clear:left; background:#ebf7f3; padding: 4px 0px 0-4px 5px; width:170px; position:relative; z-index:1000; color:#cbccce; } #navigation-1 li ul.navigation-2 li a span { position:absolute; top:0; left:132px; font-size:10pt; color:#000000; } #navigation-1 li ul.navigation-2 li:hover a span, #navigation-1 li ul.navigation-2 li a:hover span { position:absolute; top:0; left:190px; font-size:10pt; color:#cbccce; } .carrot{ color:#ff9900; } I have been hunting around for an all CSS drop down menu that when you hover on the heading the menu expands down to show the heading 1 menu and if you hovered over the next menu item this expands to show that menu list instead a bit like the 'be the first to apply' on the right of this page, http://www.fish4.co.uk/iad/jobs search for say 'admin' just to get to the results page as this is where the menu is. the look is not important but the function is BUT.... i wanted to have many links in the drop down not just the one as in this example. this is the extracted code i have got so far that does what you see on this page. Code: <style> #rightcolumn { float: right; width: 170px; text-align: center; } #leftcolumn { float: left; width: 545px; padding: 10px; } h3#bftahead { text-align:left; color:#c1001f; font-size:1.5em; font-weight:bold; margin:23px 0px 10px 0px; } #bfta h4 { font-size:1.1em; margin:0em; padding:0.4em 0.1em 0.6em 0.1em } #bfta { width:170px; text-align:left; padding:0px; margin:0px 0px 10px 0px; list-style-type:none; height:47em; overflow:hidden; background:#ffffff url('images/bfta-background.jpg') bottom no-repeat; border-bottom:1px solid #cfcfcf; } #bfta li {float:left;width:100%;} #bfta li a { padding:0.5em 3%; display:block; width:94%; height:1.95em; margin-bottom:-0.4em; overflow:hidden; text-decoration:none; background:transparent url('images/bfta-background.png') no-repeat; color:#333333; font-family:arial, sans-serif; } #bfta li a#last, #bfta li a:hover {height:24em;} #bfta-whitebrand {list-style:none;margin:0em 0em 1em 1em;padding:0px;} #bfta-whitebrand li {padding:0em 0.4em;} </style> <div id="leftcolumn"> <ul id="bfta"> <li> <h4>a1</h4> a1 </li> <li><a href="a2"> <h4>a2</h4> a2</a> </li> <li><a href="a3"> <h4>a4</h4> a3</a> </li> </ul> </div> Link: http://cemtec.quicksites.co.za CSS: http://cemtec.quicksites.co.za/wp-c...grass/style.css Hi This dropdown menu on Products works in Firefox but when I goto IE7 I dont see anything at all. I have tried changing the div Class to a Div Id also without any change. Anybody have any clues to what I have todo? L. Hi, on my site http://www.mattmdesign.com, sometimes when you mouseover the portfolio the menu appears in the wrong spot. someone also said that it is appearing on the left side of the page everytime with mozilla 1.0 Does anyone know how I can make it appear right under the porfolio link every time? Thanks, Matt Hey all, having a bit of trouble getting my drop down menu to display properly. It's modeled after the suckerfish menu, only modded a bit. Here's the site...hover over 'machines' to see what i'm talking about (have to use FF, i haven't added the JS for IE yet). The drop down is adopting the rollovers from the mainmenu, and I don't know what to change to make 'em different. Here's the CSS for the menu: Code: #mainmenu { width:780px; height:41px; margin:auto; position:relative; } #mainmenu li.navigation { width:78px; height:41px; float:left; text-align:center; background:#B8A488 url(images/mainmenu_roll.gif) no-repeat; } #mainmenu li.navigation a{ background:#66563D url(images/mainmenu_off.gif) no-repeat; display:block; text-decoration:none; color:#F4F1E5; height:31px; padding-top:10px; } #mainmenu li.navigation a:hover { background:transparent; color:#66563D; } #mainmenu li#home { background-image:url(images/home_roll.gif); } #mainmenu li#home a{ background-image:url(images/home_off.gif); } #mainmenu li#home a:hover { background:transparent; } #mainmenu li#contact { background-image:url(images/contact_roll.gif); } #mainmenu li#contact a { background-image:url(images/mainmenu_off.gif); } #mainmenu li#contact a:hover { background:transparent; } /* BEGIN DROP DOWN MENU */ li ul { display: none; position: absolute; top: 1px; margin-left:-2px; background-color:#B8A488; border-left:1px solid #66563D; border-bottom:1px solid #66563D; padding:2px; z-index:500; } * html li ul { top:26px; } /* li ul li { padding:0; } */ li > ul { top: auto; left: auto; } li:hover ul, li.over ul{ display: block; } Thanks! My second level menu items are not showing in IE, but show fine in firefox. Code: #menucontainer { width: 100%; clear: both; position: relative; text-align: center; margin: 0 auto; padding-left:0px; padding-top:35px; padding-bottom:15px; } #menu { text-align: center; display:table; padding:5; margin:0 auto; list-style-type:none; white-space:nowrap; background: #eee; } #menu ul { font: small-caps bold 12px/15px "lucida grande", tahoma, arial, verdana, sans-serif; list-style: none; margin: 0; padding: 0; width: 7em; float: left; } #menu a { font: bold 11px/16px arial, helvetica, sans-serif; display: block; border-width: 1px; border-style: solid; border-color: #ccc #888 #555 #bbb margin: 0; padding: 2px 3px; } #menu a { color: #C7C7C7; background: #000; text-transform: small-caps; } #menu a:hover { color: #fff; background: #000000; } /* ********* secondary links ************** */ #menu li li a { color: #C7C7C7; background: #292A2C; text-decoration: none; } #menu li li a:hover { color: #FFF; background: #292A2C; } #menu li:hover { z-index:1;} #menu li {position: relative} #menu ul ul { position: absolute; z-index:100; left:0; top:auto; display:none; } div#menu ul ul, div#menu ul li:hover ul ul {display: none;} div#menu ul li:hover ul, div#menu ul ul li:hover ul {display: block;} <!--[if IE]> <style type="text/css" media="screen"> body { behavior: url(behavior.htc); /* call hover behaviour file */ font-size: 100%; /* enable IE to resize em fonts */ } } #menu ul li a { height: 1%; /* make links honour display: block; properly */ } </style> <![endif]--> Hi yall, i'm a quite newbie on css and i'm having an issue with my drop menu on the site i'm trying to do , with wordpress, multi level menu...i started from the code generated by the css generator and tried to fit it to my meeds. but, i can't control the li li menu (categories), i want it to appear exactly at the end of the li categories. 2) the second issue is that i'm trying to add a margin to the main ul because it's to near from the top. can someone help me plz? here my code Code: #suckerfishnav, #suckerfishnav ul { float: left; height: 2.98em; width: 960px; list-style: none; line-height: 1; background: white; font-weight: bold; margin: 0.1em 0.1em 0.1em 0.1em; padding: 0; } #suckerfishnav a { display: block; color: #7c6240; text-decoration: none; padding-top: 0.25em; padding-right: 0.7em; padding-bottom: 0.1em; padding-left: 0.2em; } #suckerfishnav li { float: left; padding: 0; width: 13em; height: 2.8em; } #suckerfishnav ul { position: absolute; left: -999em; height: auto; margin-left: 2em; line-height: 1; z-index: 500; } #suckerfishnav li li { width: 9.6em; border: solid #eda; border-width: 1px; padding-top; 10px; } #suckerfishnav li ul a { width: 9.8em; } #suckerfishnav li ul ul { margin: -0.20em 0 0 9.8em; } #suckerfishnav li ul { position: absolute; left: -999em; height: auto; width: 9.9em; w\idth: 9.8em; font-weight: normal; border-width: 0.20em; margin: 0; z-index: 500; } #suckerfishnav li ul a { width: 9.9em; w\idth: 9.8em; } #suckerfishnav li:hover ul ul, #suckerfishnav li:hover ul ul ul, #suckerfishnav li.sfhover ul ul, #suckerfishnav li.sfhover ul ul ul { left: -999em; } #suckerfishnav li:hover ul, #suckerfishnav li li:hover ul, #suckerfishnav li li li:hover ul, #suckerfishnav li.sfhover ul, #suckerfishnav li li.sfhover ul, #suckerfishnav li li li.sfhover ul { left: auto; } #suckerfishnav li:hover, #suckerfishnav li.sfhover { background: #eda; width: 9.5em; w\idth: 9.4em; } Help!! I am trying to design this website: nitrocanine .com/D/DDesign and the dropdown menus won't work in IE, while they work in Chrome, Safari, Firefox... does anyone know how to make them work in IE as well?? You can view the source and see the css coding and the relevant HTML. I'm having trouble writing CSS for a nav menu that drops down to four levels. I'm able to drop down to three but I'm having a tough time with the fourth level. Please help. My CSS: /* style the top level hover */ .menu a:hover, .menu ul ul a:hover { color:#3d4058; background:#ffffff; } .menu :hover > a, .menu ul ul :hover > a { color:#3d4058; background:#ffffff; } /* make the second level visible when hover on first level list OR link */ .menu ul li:hover ul, .menu ul a:hover ul { visibility:visible; } /* keep the third level hidden when you hover on first level list OR link */ .menu ul :hover ul ul { visibility:hidden; } /* make the third level visible when you hover over second level list OR link */ .menu ul :hover ul :hover ul { visibility:visible; } /* make the 4th level hidden */ .menu ul :hover ul :hover ul ul { visibility:hidden; } /* make the 4th level visible */ .menu ul ul li:hover ul ul ul, .menu ul a:hover ul ul ul { visibility:visible; } Hey there! Hi there, I'm working my way through html, css and web design at the moment, and looking at drop down menus. Currently I'm looking at css only menus, I haven't delved into javascript yet. So I I've got a few questions regarding what I've currently got: html4strict Code: Original - html4strict Code <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Hello</title> <link type="text/css" rel="stylesheet" media="screen" href="default.css" /> </head> <body> <div id="navbar"> <ul> <li><a href="#">Main Page</a></li> <li><a href="#">About</a></li> <li><a class="dropmenu"><a href="#">Tutorials</a> <ul> <li><a href="#">Photoshop</a></li> <li><a href="#">Dreamweaver</a></li> <li><a href="#">HTML</a></li> <li><a href="#">CSS</a></li> </ul> </a></li> <li><a class="dropmenu"><a href="#">Articles</a> <ul> <li><a href="#">3 column magic</a></li> <li><a href="#">Site layouts</a></li> <li><a href="#">Creating Navbars</a></li> </ul> </a></li> <li><a href="#">Links</a></li> </ul> </div> </body> </html> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> css Code: Original - css Code @charset "utf-8"; /* CSS Document */ #navbar ul { padding: 0; margin: 0; list-style: none; background-color: #3F9; width: 120px; } #navbar li { position: relative; } #navbar li li { position: static; } #navbar ul ul { background-color: #7B5; top: 0; left: 120px; display: none; position: absolute; } #navbar a { text-decoration: none; text-align: center; display: block; padding: 5px 10px; } #navbar a.dropmenu { padding: 0; margin: 0; border: none; display: block; } #navbar li:hover ul, #navbar a.dropmenu:hover ul { display: block; } #navbar a:hover, #navbar li:hover { color: #000; background-color: #3CF; } #navbar li:hover li:hover { background-color: #F04; } @charset "utf-8"; So its currently a vertical flyout menu, I'll be looking at horizontal drop down ones soon. Regarding the last css rule, I was just experimenting with presentation and was wondering if I could make the second level of menus have a different hover background colour than that of the initial menu. Is it just something I've got wrong with the selector (#navbar li:hover li:hover)? The 2nd, more puzzling thing, is that you can see in the first menu, only the text comes up as a hyperlink (or clickable). In the second level menus, the whole area of the li (being an a element displayed in block mode) is clickable. I am pretty sure this is a result of setting the position property of the the li elements to relative. I have set the li elements to static (default) in the second menu, and as noted, they work fine (or more desirably). Why does changing the position property of the li to relative suddenly stop it from being clickable? The relative positioning is needed to correctly position the second level uls (menus), unless there is another way to do that. BTW Currently looking at it with ie7 at the moment. What's going on here? Lastly, I was hoping my a.dropmenu elements would let ie6 display the menu; sadly this doesn't seem to be happening. Again, any ideas what's gone wrong? |