Page 1 of 1

Horizontal menu not showing background in IE6 (second level)

Posted: Thu Oct 09, 2008 11:27 am
by vzw klemtoon
Hi,

Could anyone please have a look?

http://klemtoon.org/antropver/

The Menu on hover secodn level isnt showing right in IE6, all other browsers are ok. What seems to be the problem? thanx in advance!

here is the css:

/* Horizontal menu for the CMS CSS Menu Module */
/* by Alexander Endresen */

#menu_vert {
  margin-left: 1px;
  margin-right: 1px;
}

/* The wrapper clears the floating elements of the menu */

/* Fix for Opera 8 */
.clearb { clear: both; }
#menuwrapper {
  /* Fix for Opera 8 */
  /*  overflow: hidden;  */
  background: transparent;
  border-bottom: 0px solid #fff;
  width: 100%;
}

/* Set the width of the menu elements at second level. Leaving first level flexible. */
#primary-nav li li {
  width: 200px;
}


/* Unless you know what you do, do not touch this */
#primary-nav, #primary-nav ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
#primary-nav ul {
  position: absolute;
  top: auto;
  display: none;
}
#primary-nav ul ul {
  margin-top: 1px;
  margin-left: -1px;
  left: 100%;
  top: 0px;
}

#primary-nav li {
  margin-left: -1px;
  float: left;
}
#primary-nav li li {
  margin-left: 0px;
  margin-top: -1px;
  float: none;
  position: relative;
}

/* Styling the basic apperance of the menu elements */
#primary-nav a {
  display: block;
  margin-top: 0px;
  padding: 11px 10px;
  padding-bottom:10px;
  text-decoration: none;
  color: #ddddca;

}
#primary-nav li a {
  border-right: 0px solid #fff;
  border-left: 0px solid #fff;
}
#primary-nav li li a {
  border: 0px solid #fff;
}
#primary-nav li, #primary-nav li.menuparent {
  background: transparent;
}

/* Styling the basic apperance of the active page elements (shows what page in the menu is being displayed) */

#primary-nav li.menuactive {
  background-color: #ddddca;
  color: #372612;
}
#primary-nav li.menuactive a {
  background-color: #ddddca;
  color: #372612;
}

/* Styling the basic apperance of the menuparents - here styled the same on hover (fixes IE bug) */
#primary-nav ul li.menuparent,
#primary-nav ul li.menuparent:hover,
#primary-nav ul li.menuparenth {
/* arrow for menuparents */
  background-image: url(images/cms/arrow.gif);
  background-position: center right;
  background-repeat: no-repeat;


}


/* Styling the apperance of menu items on hover */

#primary-nav li:hover,
#primary-nav li:hover a,
#primary-nav li.menuh,
#primary-nav li.menuparenth,
#primary-nav li.menuactiveh {
  background-color: #ddddca;
  color: #372612;
}


/* The magic - set to work for up to a 3 level menu, but can be increased unlimited */

/*
just add
#primary-nav li:hover ul ul,
#primary-nav li.menuparenth ul ul ul,
for fourth level
*/
#primary-nav ul,
#primary-nav li:hover ul,
#primary-nav li:hover ul ul,
#primary-nav li.menuparenth ul,
#primary-nav li.menuparenth ul ul {
  display: none;


}

/* add
#primary-nav ul ul ul li:hover ul,
#primary-nav ul ul ul li.menuparenth ul,
for fourth level
*/
#primary-nav li:hover ul,
#primary-nav ul li:hover ul,
#primary-nav ul ul li:hover ul,
#primary-nav li.menuparenth ul,
#primary-nav ul li.menuparenth ul,
#primary-nav ul ul li.menuparenth ul {
  display: block;
}


/* IE Hacks */
#primary-nav li li {
  float: left;
  clear: both;
}
#primary-nav li li a {
  height: 1%;
}

Re: Horizontal menu not showing background in IE6 (second level)

Posted: Thu Oct 09, 2008 11:40 am
by KO
Try adding ...

Code: Select all

#primary-nav a:hover, #primary-nav ul li  {background-color: #ddddca; 
   color: #372612;}
to your stylesheet.

Re: Horizontal menu not showing background in IE6 (second level)

Posted: Fri Oct 10, 2008 1:27 pm
by vzw klemtoon
solved problem partially...
second level is showing, but without text-color. third levels, or secodn levels with child still have same problem. all in IE6  ofcourse ;)

Re: Horizontal menu not showing background in IE6 (second level)

Posted: Fri Oct 10, 2008 5:36 pm
by KO
You need to work with those "h" ending classes as that's what IE looks when Javascript is enabled. As you put background for "a" tag, then try something like:

Code: Select all

#primary-nav li:hover, 
#primary-nav li:hover a,
#primary-nav li.menuh [color=red]a[/color], 
#primary-nav li.menuparenth [color=red]a[/color], 
#primary-nav li.menuactiveh [color=red]a[/color] { 
  background-color: #ddddca; 
   color: #372612;
}
Maybe then you find what's cool for it.

Re: Horizontal menu not showing background in IE6 (second level)

Posted: Tue Oct 14, 2008 6:01 pm
by vzw klemtoon
tried that,

still not showing linkcolor in level 2, and no background and linkcolor in level3 (IE 6 ofcourse)

current css:

/* Horizontal menu for the CMS CSS Menu Module */
/* by Alexander Endresen */

#menu_vert {
  margin-left: 1px;
  margin-right: 1px;
}

/* The wrapper clears the floating elements of the menu */

/* Fix for Opera 8 */
.clearb { clear: both; }
#menuwrapper {
  /* Fix for Opera 8 */
  /*  overflow: hidden;  */
  background: transparent;
  border-bottom: 0px solid #fff;
  width: 100%;
}

/* Set the width of the menu elements at second level. Leaving first level flexible. */
#primary-nav li li {
  width: 200px;
background-color: #ddddca;
  color: #372612;
}

#primary-nav a:hover, #primary-nav ul li, #primary-nav ul li li  {background-color: #ddddca;
  color: #372612;}


/* Unless you know what you do, do not touch this */
#primary-nav, #primary-nav ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
#primary-nav ul {
  position: absolute;
  top: auto;
  display: none;
}
#primary-nav ul ul {
  margin-top: 1px;
  margin-left: -1px;
  left: 100%;
  top: 0px;
}

#primary-nav li {
  margin-left: -1px;
  float: left;
}
#primary-nav li li {
  margin-left: 0px;
  margin-top: -1px;
  float: none;
  position: relative;
}

/* Styling the basic apperance of the menu elements */
#primary-nav a {
  display: block;
  margin-top: 0px;
  padding: 11px 10px;
  padding-bottom:10px;
  text-decoration: none;
  color: #ddddca;

}
#primary-nav li a {
  border-right: 0px solid #fff;
  border-left: 0px solid #fff;
}
#primary-nav li li a {
  border: 0px solid #fff;
}
#primary-nav li, #primary-nav li.menuparent {
  background: transparent;
}

/* Styling the basic apperance of the active page elements (shows what page in the menu is being displayed) */

#primary-nav li.menuactive {
  background-color: #ddddca;
  color: #372612;
}
#primary-nav li.menuactive a {
  background-color: #ddddca;
  color: #372612;
}

/* Styling the basic apperance of the menuparents - here styled the same on hover (fixes IE bug) */
#primary-nav ul li.menuparent,
#primary-nav ul li.menuparent:hover,
#primary-nav ul li.menuparenth {
  background-color: #ddddca;
  color: #372612;

}


#primary-nav li:hover,
#primary-nav li:hover a,
#primary-nav li.menuh,
#primary-nav li.menuparenth,
#primary-nav li.menuactiveh {
  background: #ddddca;
    color: #372612;
}


/* The magic - set to work for up to a 3 level menu, but can be increased unlimited */

/*
just add
#primary-nav li:hover ul ul,
#primary-nav li.menuparenth ul ul ul,
for fourth level
*/
#primary-nav ul,
#primary-nav li:hover ul,
#primary-nav li:hover ul ul,
#primary-nav li.menuparenth ul,
#primary-nav li.menuparenth ul ul {
  display: none;
  background-color: #ddddca;
  color: #372612;

}

/* add
#primary-nav ul ul ul li:hover ul,
#primary-nav ul ul ul li.menuparenth ul,
for fourth level
*/
#primary-nav li:hover ul,
#primary-nav ul li:hover ul,
#primary-nav ul ul li:hover ul,
#primary-nav li.menuparenth ul,
#primary-nav ul li.menuparenth ul,
#primary-nav ul ul li.menuparenth ul {
  display: block;
}


/* IE Hacks */
#primary-nav li li {
  float: left;
  clear: both;
}
#primary-nav li li a {
  height: 1%;
}

Re: Horizontal menu not showing background in IE6 (second level)

Posted: Tue Oct 14, 2008 7:55 pm
by KO
I just noticed that color codes won't inside code tag in this forum.

So it needs o be ...

#primary-nav li:hover,
#primary-nav li:hover a,
#primary-nav li.menuh a,
#primary-nav li.menuparenth a,
#primary-nav li.menuactiveh a {
  background: #ddddca;
    color: #372612;
}

that's the only thing that changes with IE6. Checked it with local copy of the page and this is where you should start. Problem is that IE6 does not understant li:hover and uses those li.menuh etc. instead.