2011-06-13 5 views
1

저는 하루 종일 내 머리를 터벅 터벅 걷고 있었고 모든 포럼에서 솔루션을 찾기 위해 생각할 수있었습니다 ... 아무 소용이 없습니다. .. 도와주세요.IE 6 7 또는 8에서 CSS 드롭 다운 메뉴가 작동하지 않습니다.

저는 매우 간단한 드롭 다운 메뉴를 사용하여 아주 간단한 웹 사이트를 만들었습니다.

파이어 폭스와 사파리에서 잘 작동하지만 드롭 다운은 Internet Explorer에 표시되지 않고 찾을 수있는 버전이 아닙니다. website

호버 링크 색상을 변경하지만 드롭 다운이 본질적으로 나중에 전체 웹 사이트를 만드는 데 사용되는 템플릿입니다

을하지 못하기 때문에 작동하는 것 같군 : 여기

임시 링크입니다. .. 지금은이 메뉴를 작동시키고 싶습니다.

또한 : 로고 주변에 이상한 경계를 두는 것처럼 보입니다 ... 아무도 그게 뭔지 알아?

a img { 
border-style: none; 
} 

내가 몇 가지를 시도하고 호버 이벤트가 사용한 선택기 작동하지 않습니다 :

+1

난 당신이 프로젝트 링크를 의미 가정합니다. IE 7, 8 및 9에서 작동합니다. 테두리를 제거하려면 CSS 규칙을 추가하십시오. img {border : 0; } –

+0

@Craig M IE에서 프로젝트 드롭 다운이 작동하지 않습니다. –

+0

그것은 내 IE에서도 작동하고 있습니다. 그리고 국경은 Craig M –

답변

1

이 로고에 경계를 제거하려면 스타일 시트에서 이것을 사용

#menu ul li:hover ul 

나는이 함께 파일에 그것을 가지고 :

#menu ul a:hover 

을하지만 당신이 그것을 보여주기 위해 UL 요소에 액세스 할 수 없습니다 ... I IE (적어도 IE6)에서이 문제를 해결하려면 Javascript가 필요하다고 생각합니다.

+0

Microfail과 같은 거대 기업이 무료로 물건을 만드는 많은 해커들보다 조금 더 잘할 수 있다고 생각하십니까? 또한 +1이 작동하도록 노력합니다. – Bojangles

0

IE6은 링크 이외의 다른 요소에 :hover을 지원하지 않습니다. 에 의해 Son of Suckerfish Dropdowns 문서에서 sfHover 함수를 살펴보십시오. 이 함수는 IE6의 JavaScript 대안입니다. 나는 당신이 전체 기사를 읽는 것이 좋습니다.

sfHover = function() { 
    var sfEls = document.getElementById('nav').getElementsByTagName('li'); 
    for (var i = 0; i < sfEls.length; i++) { 
     sfEls[i].onmouseover = function() { 
      this.className += ' sfhover'; 
     } 
     sfEls[i].onmouseout = function() { 
      this.className = this.className.replace(new RegExp(' sfhover\\b'), ''); 
     } 
    } 
} 
if (window.attachEvent) window.attachEvent('onload', sfHover); 

그리고 이미지의 보더

, 단순히 추가

img { border:0 } 
+0

모두의 빠른 답변에 감사드립니다! 너는 대단한 도움이되었다. 첫 번째 생각은 z- 인덱스 문제이므로 다른 모든 항목 (z-index : 90;) 위에 이미 드롭 다운을 설정했기 때문입니다. IE의 불투명도 때문에 문제가 발생한 것 같습니다. 내가 불투명도 필터를 제거 즉, CSS에서 지금은 잘 작동합니다. 유일한 문제는 메뉴의 불투명도가 훨씬 좋아 보인다는 것입니다. 누군가이 솔루션을 가지고 있다면 기꺼이들을 수 있습니다. 다시 한 번 감사드립니다 !! – user796564

관련 문제