Hi,

I am using superfish in a Joomla template, and it works fine in all
browsers including IE6 and IE8, not in IE7 however. I do not have any
positioned elements, its just that it seems as if the containing li's,
have overflow:hidden, which they don't have. I can see that it works
in IE7 because I have applied small negative margins, so a small piece
of the dropdown actually appears inside the containing <li>

I would provide you with a link, however I prefer to do so privately
if needed.

My code:
<div id="menu">
  <ul class="menu sf-menu sf-js-enabled sf-shadow">
    <li class="parent item10">
      <a class="sf-with-ul" href="/nwg/index.php?
option=com_content&view=category&layout=blog&id=7&Itemid=10">
        <span>Visie</span>
        <span class="sf-sub-indicator"> ยป</span>
      </a>
      <ul style="display: none; visibility: hidden;">
        <li class="item19">
          <a href="/nwg/index.php?
option=com_content&view=category&layout=blog&id=8&Itemid=19">
            <span>Strategie</span>
          </a>
        </li>
      </ul>
    </li>
  </ul>
</div>

CSS:
#menu ul {
    list-style-type: none;
        padding-left:15px;
}

#menu li {
    display:block;
    float:left;
    padding:2px 0;
    height:23px;
}

/* Opacity, exclude IE6 */
html>body #menu ul li {
    filter:alpha(opacity=70);
        opacity: 0.7;
}

/* Firefox children inherit transparency, IE children don't */
html>body #menu ul li li, x:-moz-any-link {
    filter:alpha(opacity=100);
    opacity: 1;
}

html>body #menu ul li#current li {
    filter:alpha(opacity=70);
        opacity: 0.7;
}

#menu li#current {
    filter:alpha(opacity=100);
    opacity:1;
        font-weight:bold;
}

#menu ul li ul {
    width:150px;
}

#menu ul li li {
    padding-left:10px;
}


/* This output is overriden for all except IE6 */
#menu ul li li {
    width:150px;
}

html>body #menu ul li li {
    width:inherit;
}

/* IE6 Hack */
#menu ul li { width:42px; }
html>body #menu ul li {
    width:auto;
}

html>body .separator {
    margin-right:13px;
}

#menu ul li ul {
    padding: 0;
    margin-top: -10px;
    margin-left: -17px;
}

#menu a {
    text-decoration:none;
    color: white;
        font-size:10pt;
}

span.separator {
    display:block;
    margin-top:-2px;
    margin-left:18px;
    height: 27px;
    border-left:1px solid white;
}

Last but not least, Superfish CSS: (I have only disabled two padding
styles)

/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
        margin:                 0;
        padding:                0;
        list-style:             none;
}
/*.sf-menu {
        line-height:    1.0;
}*/
.sf-menu ul {
        position:               absolute;
        top:                    -999em;
        /*width:                        10em; /* left offset of submenus need 
to match (see below)
*/
        list-style:             none;
}
.sf-menu ul li {
        width:                  100%;
        list-style:             none;
}
.sf-menu li:hover {
        visibility:             inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
        float:                  left;
        position:               relative;
        height:                 23px;
}
.sf-menu a {
        display:                block;
        position:               relative;
}
.sf-menu li:hover ul, .sf-menu li#parent:hover ul,
.sf-menu li.sfHover ul {
        left:                   0;
        top:                    2.5em; /* match top ul list item height */
        z-index:                99;
}
ul.sf-menu li:hover li ul, .sf-menu li#parent:hover ul,
ul.sf-menu li.sfHover li ul {
        top:                    -999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
        /*left:                 10em; /* match ul width */
        top:                    0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
        top:                    -999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
        /*left:                 10em; /* match ul width */
        top:                    0;
}

/*** DEMO SKIN ***/
.sf-menu {
        float:                  left;
        margin-bottom:  1em;
}
.sf-menu a {
        /*border-left:  1px solid #fff;*/
        /*border-top:           1px solid #CFDEFF;*/
        height:                 23px;
        xpadding:               0 1em; /* ET: DISABLED, IE6 DID NOT LINE OUT 
PROPERLY
14-12-2009 */
}
.sf-menu a, .sf-menu a:visited  { /* visited pseudo selector so IE6
applies text colour*/
        color:                  #13a;
}
.sf-menu li {
        /*background:           #BDD2FF;*/
}
.sf-menu li li {
        background:             #2ea2da;
        filter:                 alpha(opacity=70);
        opacity:                0.7;
}
.sf-menu li li li {
        background:             #9AAEDB;
}
.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
        /*background:           #CFDEFF;*/
        outline:                0;
}

/*** arrows **/
.sf-menu a.sf-with-ul {
        xpadding-right:         2.25em; /* ET: DISABLED, IE6 DID NOT LINE OUT
PROPERLY 14-12-2009 */
        min-width:              1px; /* trigger IE7 hasLayout so spans position
accurately */
}
.sf-sub-indicator {
        position:               absolute;
        display:                block;
        right:                  .75em;
        top:                    1.05em; /* IE6 only */
        width:                  10px;
        height:                 10px;
        text-indent:    -999em;
        overflow:               hidden;
        background:             url('../images/arrows-ffffff.png') no-repeat 
-10px
-100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
a > .sf-sub-indicator {  /* give all except IE6 the correct values */
        top:                    .8em;
        background-position: 0 -100px; /* use translucent arrow for modern
browsers*/
}
/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
        background-position: -10px -100px; /* arrow hovers for modern
browsers*/
}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator { background-position:  -10px 0; }
.sf-menu ul a > .sf-sub-indicator { background-position:  0 0; }
/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
        background-position: -10px 0; /* arrow hovers for modern browsers*/
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
        background:     url('../images/shadow.png') no-repeat bottom right;
        padding: 0 8px 9px 0;
        -moz-border-radius-bottomleft: 17px;
        -moz-border-radius-topright: 17px;
        -webkit-border-top-right-radius: 17px;
        -webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
        background: transparent;
}

Reply via email to