2009-07-28 11 views
0

UPDATECSS - IE7&8の問題

私はslideUp/Down.If私は

ENDのUPDATE

OK表示/非表示の何もかもを使用するを使用する場合、これが唯一の発生に気づいた私サイト私は開発/設計している、私は2つの問題があります。

IE7では、マウスのabitを動かすまで、スライディングメニューが表示されないようです。 IE8では

alt text http://img27.imageshack.us/img27/4422/7282009105215pm.png

メニューがアップスライドした後、マージンが削除されたようです。

alt text http://img27.imageshack.us/img27/4592/7282009105247pm.png

JS(必要な場合)

 
$(function() { 
    $("#mainNav li:has(ul) > a").addClass("hasMore"); 
    $("#mainNav li").hoverIntent(menuOn, menuOff); 
    $.each($("#mainNav a.active").parents("li"), function() { 
     $(this).children("a:first").addClass("active"); 
    }); 
    $("#mainNav").mouseleave(function() { 
     $("ul", this).slideUp(200); 
     $(".open", this).removeClass("open"); 
    }); 
}); 
function menuOn() { 
    var childUl = $(this).children("ul"); 
    if (childUl.length) { 
     childUl.slideDown(200); 
     $(this).addClass("open"); 

     $("ul", $(this).closest("li").siblings("li")).slideUp(200); 
     $(this).closest("li").siblings("li").removeClass("open"); 
    } 
} 
function menuOff() { 

} 

これはそれを修正する必要があり

 
#mainNav, #mainNav ul { 
    list-style: none; 
    padding: 0; 
    margin: 0; 
} 
#mainNav ul { 
    display: none; 
} 
#mainNav li { 
    position: relative; 
} 
#mainNav li ul { 
    margin: 2px 0 2px 5px; 
    background-color: #282a33; 
} 
#mainNav a:link, #mainNav a:visited { 
    display: block; 
    padding: 5px 10px; 
    margin-bottom: 2px; 
    color: #282a33; 
    background-color: #ffe7a6; 
    text-decoration: none; 
} 
#mainNav a:hover, #mainNav a:active { 
    background-color: #e6c468; 
} 
#mainNav > li.open > a.hasMore { 
    background-color: #e6c468; 
} 
#mainNav > li > a.active { 
    color: #fff; 
    background-color: #fa8000 !important; 
    font-weight: bold; 
} 
#mainNav li li a:link, #mainNav li li a:active, #mainNav li li a:visited, #mainNav li li a:hover { 
    background-color: transparent !important; 
    padding: 2px 5px; 
    font-family: Georgia, Garamond, "Times New Roman", serif; 
    font-size: 11px; 
    font-weight: bold; 
    color: white; 
} 
#mainNav li li a:hover, #mainNav li li a:active { 
    color: #ffe7a6; 
} 
#mainNav li li a.active { 
    color: #fa8000; 
} 
#mainNav a.hasMore { 
    background-image: url(../images/section_collapsed.png); 
    background-repeat: no-repeat; 
    background-position: right center; 
} 
#mainNav a.active.hasMore, 
#mainNav a.hasMore:hover, 
#mainNav li li > a.hasMore { 
    background-image: url(../images/section_collapsed2.png); 
} 
#mainNav li.open > a.active.hasMore, 
#mainNav li.open > a.hasMore { 
    background-image: url(../images/section_expanded2.png); 
} 
+0

** alt text **はリンクではありませんか?それはあなたのソースでエスケープされています。 – geowa4

+0

私は本当に何を意味するのですか?代替テキスト?私は何かを脱出しましたか? – iceangel89

+0

私は、スライドの代わりにshow()とhide()を使用すると、これらの問題が発生しないことに気付きました。 – iceangel89

答えて

0

CSS ...

#mainNav { 
    zoom:1; 
} 

についての詳細を読みます

+0

は...ズームされていないように見えますが、ulはメインコンテンツの上に何とか伸びます。私は高さを試しました:1px。それでも動作しません。何かabt peek a boo?そのIE7で修正されるはずですか? http://iceangel89.110mb.com/templates/em/1_index.html – iceangel89