2009-07-28 1 views
0

UPDATECSS - IE7 & 8 문제

나는 slideUp/가망이 난에서

최종 업데이트

OK 표시/숨기기 everythings를 사용을 사용할 때 이것은 단지 발생주의 내 사이트 개발/설계 중입니다. 문제가 2 개 있습니다.

IE7에서는 마우스를 움직일 때까지 슬라이딩 메뉴가 표시되지 않는 것 같습니다. 메뉴가 슬라이드 후 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 텍스트 **가 링크가 아닙니다. 당신의 출처에서 탈출했습니다. – 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