- ベストアンサー
IE8でli:hoverが効かない
- IE8でli:hoverが効かない問題について、原因と回避方法を教えてください。
- ホームページにCSSを使ったドロップダウンメニューを導入しているが、IE8でli:hoverが機能しない。
- li:hoverが効かない問題について、CSSやHTMLを確認したが解決しない。サブメニューが表示されない。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
たぶんIEを使ってらっしゃる。 IEではDOCTYPEの記述などで標準モードか互換モードかをスイッチしますから、互換モード用にかかれたHTML/CSSを標準モードと混在して使うことは不可能です。 私は基本的にすべて標準モードで作成しています。今は他のブラウザも多いし、IEもそちらを思考していますから将来的には・・ スタイルシートをどちらでも使えるように書き換えるしかないでしょう。問題はここだけではないと思われますので
その他の回答 (2)
- outbrave
- ベストアンサー率60% (231/380)
HTML4.01の場合は <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> システム識別子と呼ばれる後半の部分がないと動作しませんね。 ページ全体がどのようなレイアウトになっているのかわかりませんけど、システム識別子を入れた状態で css を調整されたほうがよいと思います。 DOCTYPE宣言も css も、そのままでと言われると私ではわかりませんので、他の回答者さんにお願いします。
お礼
何度もありがとうございます。 やはり、宣言文を変更した上で、cssを書き換えることにしました。
- outbrave
- ベストアンサー率60% (231/380)
DOCTYPE宣言が入っていると動作し、入っていない場合は動作しませんでした。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> 以上、ご報告まで。
補足
ありがとうございます。 DOCTYPE宣言文を調べたところ、 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> となっていました。 XHTMLは使えないので、今の宣言文はこのままで、 教えていただいた宣言文から後半のURL部分を追加したところ、動作しました。 が、HPの体裁が崩れました。 cssをこのまま活かしながら、動作させる方法はないでしょうか? 何度も申し訳ありません。
お礼
ありがとうございます。 標準モードに変更して、CSSを書き換えることにします。 BAがお一人にしかつけられなくて心苦しいですが、 標準モード・互換モードを教えていただき、今後の作業を決定することが できたということで、ORUKA1951様をBAにさせていただきます。 お二方ともありがとうございました。