2011-06-13 18 views
1

私はこの一日中私の頭を悩まされています。 .. 助けてください。IE 6 7または8でCSSドロップダウンメニューが機能しない

私は非常に基本的なドロップダウンメニューで、私が取り組んでいるかなりシンプルなウェブサイトを持っています。

FirefoxとSafariでうまく動作しますが、ドロップダウンはInternet Explorerに表示されません。見つけられるバージョンではありません。ここで

は、一時的なリンクです:リンク変更色が、ドロップダウンが

を失敗したのでwebsite

ホバーが、これは、本質的に、後に全体のウェブサイトを作るために使用されるテンプレートで動作しているようです。 ..今はただこのメニューを働かせたいだけです。

また、ロゴの周りに奇妙な境界線を置いているようです...誰もがそれを知っていますか?ロゴに国境を取り除くために

+1

を私はあなたがプロジェクトのリンクを意味すると仮定します。私のためにIE 7,8,9で動作します。境界線を取り除くには、CSSルールを追加します:img {border:0; } –

+0

@Craig Mプロジェクトドロップダウンは私のIEではうまくいきません。 –

+0

それは私のIEでも働いています。そして境界線は、Craig M –

答えて

1

は、スタイルシートでこれを使用します。

a img { 
border-style: none; 
} 

私はいくつかのことを試してみましたが、ホバリングイベントは、あなたが使用セレクターで作業されていません。

#menu ul li:hover ul 

私はこれをファイルにそれを得た:

#menu ul a:hover 

をしかし、その後、あなたはそれを示すために、UL要素にアクセスすることはできません... IこれをIE(少なくともIE6)で修正するにはJavascriptが必要だと思います。

+0

Microfailのような巨大企業は、無料のもの(FFのようなもの)を作っているたくさんのハッカーよりも少しうまくいくと思いますか?また、これを働かせるための努力のために+1。 – Bojangles

0

IE6は、リンク以外の要素に:hoverを単にサポートしていません。 Son of Suckerfish Dropdownsの記事のsfHover機能をHTML Dogでご覧ください。この関数は、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-indexの問題だったので、他のすべての項目の上にドロップダウンを既に設定していました。(Z-index:90;) IEで不透明になっているようです。私は不透明度フィルタを、つまりCSSから削除しました。 唯一の問題は、メニュー上の不透明度がより良く見えると思うということです。誰かがこれに対する解決策を持っていれば、私はそれを聞いてうれしいでしょう。 もう一度ありがとう! – user796564

関連する問題