Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 5 of 5
  1. #1
    New to the CF scene
    Join Date
    Dec 2006
    Posts
    6
    Thanks
    0
    Thanked 0 Times in 0 Posts

    creating a dropdown menu using CSS- problem

    Hi,

    I am trying to create a valid W3c/CSS site which uses a drop down menu. I have created a valid page using Dreamweaver 8.

    I have used 2 CSS layers 1 for the menu and 1 layer for the text. Everything works fine until i added the text layer, now when I hover over the drop down menu items which have text underneath, the menu disappears as my cursor changes to the vertical text icon that looks like a big 'I'.

    The problem is the cursor is focusing on text instead of the menu, but I dont know how to stop this, I have change the order of the layers but I cant see the text if its the bottom layer.

    Is there anyway round this? without not having no text underneath where my drop down menu passes.

    Any help truly appreciated

    Regards

    Lee

  • #2
    New Coder
    Join Date
    Sep 2007
    Posts
    41
    Thanks
    0
    Thanked 2 Times in 2 Posts
    Hey Lee,
    I didn't quite understand what you are talking about,
    but I can advise you to visit Stu Nicholls' site, and checking out how he did some of the stuff.
    http://www.cssplay.co.uk/menus/

    He has quite an impressive gallery of CSS menus from all sorts and kinds, and they are all valid.
    Find something you like, and just checkout the source to see how the stuff works.
    If you'll need any further help, it will be more helpful if you add some code to show us what you are talking about.

    To change the mouse cursor icon, you can use this attribute in the CSS:
    cursor: default; /* For regular arrow shaped icon */
    cursor: pointer; /* For hand shaped icon (links usually) */

  • #3
    New to the CF scene
    Join Date
    Dec 2006
    Posts
    6
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Hi there,

    Thanks for that Eli.

    Here is my code html followed by CSS style sheet, hope this helps;

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title></title>
    <link href="p7exp/p7exp.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" src="p7exp/p7exp.js"></script>
    <!--[if lte IE 7]>
    <style>
    #menuwrapper, #p7menubar ul a {height: 1%;}
    a:active {width: auto;}
    </style>
    <![endif]-->
    
    <link href="p7exp.css" rel="stylesheet" type="text/css">
    <link href="p7_cssexpress/p7exp/p7exp.css" rel="stylesheet" type="text/css">
    <style type="text/css">
    <!--
    #Layer3 {
    	position:absolute;
    	left:236px;
    	top:71px;
    	width:688px;
    	height:384px;
    	z-index:5;
    	background-image: url(pictures/background.jpg);
    }
    body {
    	background-color: #000000;
    }
    #Layer2 {
    	position:absolute;
    	left:367px;
    	top:161px;
    	width:453px;
    	height:225px;
    	z-index:6;
    }
    .style1 {color: #FFFFFF}
    #Layer1 {
    	position:absolute;
    	left:116px;
    	top:145px;
    	width:489px;
    	height:255px;
    	z-index:5;
    }
    -->
    </style>
    </head>
    <body>
    <div id="Layer3">
      <div id="menuwrapper">
    <ul id="p7menubar">
    <li><a href="#">Home</a></li>
    <li><a class="trigger" href="#">Trigger One</a>
    <ul>
    <li><a href="#">Sub 1.1</a></li>
    <li><a href="#">Sub 1.2</a></li>
    <li><a href="#">Sub 1.3</a></li>
    <li><a href="#">Sub 1.4</a></li>
    </ul>
    </li>
    <li><a class="trigger" href="#">Trigger Two</a>
    <ul>
    <li><a href="#">Sub 2.1</a></li>
    <li><a href="#">Sub 2.2</a></li>
    <li><a href="#">Sub 2.3</a></li>
    <li><a href="#">Sub 2.4</a></li>
    <li><a href="#">Sub 2.5</a></li>
    </ul>
    </li>
    <li><a class="trigger" href="#">Trigger Three</a>
    <ul>
    <li><a href="#">Sub 3.1</a></li>
    <li><a href="#">Sub 3.2</a></li>
    <li><a href="#">Sub 3.3</a></li>
    <li><a href="#">Sub 3.4</a></li>
    <li><a href="#">Sub 3.5</a></li>
    <li><a href="#">Sub 3.6</a></li>
    <li><a href="#">Sub 3.7</a></li>
    <li><a href="#">Sub 3.8</a></li>
    </ul>
    </li>
    </ul>
    <br class="clearit">
    </div></div>
    
    
    <div id="Layer2">
      <DIV>
        <DIV align="left" class="style1">This is where you would explain about your company. filler text   All the details and more would go here. filler text... example.of work This is   where you would explain about your company. </DIV>
        <DIV>
          <DIV class="style1">Our favorite project! This is where you would explain about   your company. All the details and more would go here. filler text... This is   where you would explain about your company. All the details and more would go   here. filler text exam</DIV>
        </DIV>
        <DIV align="left" class="style1">This is where you would explain about your company. filler text   All the details and more would go here. filler text... example.of work This is   where you would explain about your company. </DIV>
      </DIV>
    </div>
    </body>
    </html>
    Code:
    */
    body {
    	font-family: "Trebuchet MS", Arial, sans-serif;
    	font-size: 100%;
    	background-color: #FFFFFF;
    	margin: 24px 0;
    	padding: 0;
    }
    /*
    Container for the menu. We set top and bottom borders only because the menu container
    stretches the entire window width. Note that this container can go inside a fixed width
    element that is centered on the page, if you so desire. It can even go inside a table cell.
    It carries a background image for aesthetics.
    */
    #menuwrapper {
    	border-top: 1px solid #000;
    	border-bottom: 1px solid #333;
    	background-color: #000000;
    
    }
    /*Clears the floated menu items.
    Assigned to a BR tag placed just before
    menuwrapper's closing DIV tag*/
    .clearit {
    	clear: both;
    	height: 0;
    	line-height: 0.0;
    	font-size: 0;
    }
    /*
    p7menubar is the root UL and p7menubar ul applies to all the sub-menu ULs.
    We set padding and margin to zero to eliminate all indentation, turn bullets off,
    and set a font-family different from the global font-family declared for the
    body element above. This sets font for just the menu. Do not add a font-size here.
    */
    #p7menubar, #p7menubar ul {
    	padding: 0;
    	margin: 0;
    	list-style: none;
    	font-family: Arial, Helvetica, sans-serif;
    }
    /*
    Root-Level Links.  Do not change the first two properties.
    Adjust padding values to make the root links taller and to offset them
    from the left and right edges of the link box. The border right creates a
    separator between links. Font-size is set here and will apply to all menu levels.
    Font color is set to light gray.
    */
    #p7menubar a {
    	display: block;
    	text-decoration: none;
    	padding: 5px 10px 5px 10px;
    	border-right: 1px solid #333;
    	font-size: .85em;
    	color: #CCCCCC;
    }
    /*
    Class assigned to those Root-Level links that have associated Sub-Menus.
    The top and bottom padding assigned this element must be the same as
    that assigned to the p7menubar a element. The right padding is increased
    to accomodate the display of background image depicting a downward
    pointing arrow.
    */
    #p7menubar a.trigger {
    	padding: 5px 16px 5px 10px;
    	background-image: url(images/p7PM_dark_south.gif);
    	background-repeat: no-repeat;
    	background-position: right center;
    }
    /*
    The Root-Level list items. Floating left allows
    them to appear horizontally. Width is for IE5 Mac. The last rule in
    this style sheet will set the width for this element to auto for all
    other browsers - hiding it from IE5 Mac. The width is proportional.
    As you add and edit root menu items, you will need to test this width
    to ensure it is wide enough to accomodate all text.
    */
    #p7menubar li {
    	float: left;
    	width: 9em;
    }
    /*
    Sets width for Sub-Menu box and the List Items inside - in proportional em units. 
    This allows the sub-menu width to expand if users resize the text in their browsers.
    */
    #p7menubar li ul, #p7menubar ul li  {
    	width: 12em;
    }
    /*
    The sub-menu links. We set color and turn off the right border, which
    would otherwise be inherited from the root link rule. We set top and 
    bottom padding less than the root items and increas the left padding
    to indent the sub-menu links a small amount in from the root links.
    */
    #p7menubar ul li a  {
    	color: #565656;
    	border-right: 0;
    	padding: 3px 12px 3px 16px;
    }
    /*
    Sub-Menu Unordered Lists describes each dropdown sub-menu grouping. 
    Positioned Absolutely to allow them to appear below their root trigger.
    Set to display none to hide them until trigger is moused over.
    Background Color must be set or problems will be encountered in MSIE.
    Right and bottom borders are set to simulate a raised look.
    A gradient background image is assigned.
    */
    #p7menubar li ul {
    	position: absolute;
    	display: none;
    	background-color: #FFFFFF;
    	border-right: 1px solid #333333;
    	border-bottom: 1px solid #333333;
    	background-image: url(images/p7exp_mgrad.jpg);
    	background-repeat: repeat-x;
    }
    /*
    Changes the Text color and background color when the Root-Level
    menu items are moused over. The second selector sets color and background
    when Root-Level items are accessed with the keyboard tab key. The third
    selector sets an active state to support keyboard access in MSIE. The fourth 
    selector is assigned to IE5 and IE6 Windows via the P7_ExpMenu script.
    Note that IE7 supports hover on elements other than links and so behaves
    like Firefox, Opera, and Safari - making the menu operable even if JavaScript
    is not enabled.
    */
    #p7menubar li:hover a, #p7menubar a:focus,
    #p7menubar a:active, #p7menubar li.p7hvr a {
    	color: #000000;
    	background-color: #C19674;
    }
    /*
    Set the Sub-Menu UL to be visible when its associated
    Root-Level link is moused over. The second selector is 
    assigned to IE5 and IE6 via the P7_ExpMenu script.
    */
    #p7menubar li:hover ul, #p7menubar li.p7hvr ul {
    	display: block;
    }
    /*
    Sets the Text color of the Sub-Level links when the Root-Level
    menu items are moused over. The second selector is 
    assigned to IE5 and IE6 via the P7_ExpMenu script.
    The color set should march the normal Sub-Level link color
    in the rule: #p7menubar ul li a. The background color must be
    transparent to allow the underlying gradient background on the UL
    to show through.
    */
    #p7menubar li:hover ul a, #p7menubar li.p7hvr ul a {
    	color: #000000;
    	background-color: transparent;
    }
    /*
    The normal hover class for Sub-Level links. The Important directive
    is required for older browsers. We set a background color, which shows
    over the gradient background. We set text color to white.
    */
    #p7menubar ul a:hover {
    	background-color: #606060!important;
    	color: #FFFFFF!important;
    }
    /* The single backslash \ character inside this comment
    causes IE5 Mac to ignore the following rule, which allows other
    browsers to render top-level menu items to their natural width.
    Do not edit this rule in any way. */
    #p7menubar li {width: auto;}

    Thanks for lookin.

    Lee

  • #4
    Regular Coder
    Join Date
    Feb 2007
    Location
    Canada
    Posts
    924
    Thanks
    10
    Thanked 56 Times in 55 Posts
    try changing the z-index for Layer3 to something greater than the z-index for the div which is interfering with it.

    And you are linking to a javascript file that is not posted. Might need a link to the page to see what is going on...
    Last edited by jlhaslip; 09-17-2007 at 01:03 PM.

  • #5
    New to the CF scene
    Join Date
    Dec 2006
    Posts
    6
    Thanks
    0
    Thanked 0 Times in 0 Posts
    When I do this the text on the div interfering with it, the text on the that div dissappears along with layer.

    Lee


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •