1

私は遭遇しました:

/* for firefox only */
@-moz-document url-prefix() {
#main_menu ul ul {
top: 37px;
}
}

これは、Firefox のスタイリングのみを定義するために使用できますが、IE のみで使用するスタイルを定義するために使用する同様の代替手段はありますか? または、ここでの「条件付きスタイルシート」アプローチはベストプラクティスと見なされますか?

http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

この例では、ドロップダウン css メニューの上部マージンのみを変更したいので、微調整する必要があるのはいくつかのスタイルだけです。

ありがとうございました。

ps私は遭遇しました:

IE のみの CSS を設定しますか?

入れようとしています:

<!--[if IE]><!--> <html class="ie"> <!--<![endif]-->

頭に入れ、css で次のように定義します。

.ie#main_menu ul ul {
top: 50px !important;
}

しかし、IEに変化は見られません。

4

3 に答える 3

2

このコードは、一般的な CSS の後にHTMLファイルに配置する必要があります。これで、ブラウザ Greater Then (and Equal) IE6 および Later Then IE8 (and Equal) に適用される別の CSS ファイル (ie.css) が作成されます。

<!--[if (gte IE 6)&(lte IE 8)]>
  <link rel="stylesheet" href="css/ie8.css" media="screen,all" />
<![endif]-->

または、元の CSS ファイルで「スター プロパティ ハック」を使用することもできます。CSS ルールの前に星を付けると、IE7 以前のバージョンがターゲットになります。例:

div{
  top:20px;
  *top:10px;
}
于 2012-12-10T08:30:48.523 に答える
0

最初に条件なしでスタイル ルールが適用されているかどうかを確認しましたか? CSS セレクターに問題がある可能性があります。CSSセレクターは、あなたが持っているものではなく、「.ie #main_menu ul ul」であるべきだと思います。「.ie」の後のスペースに注意してください

.ie #main_menu ul ul {
    top: 50px !important;
}
于 2012-12-10T02:15:07.870 に答える
0

IE の REAL バージョンでテストしていますか、それとも開発者ツールでバージョンを変更していますか? たとえば、IE の開発者ツールは、IE 8 でどのように見えるべきかを正確に表現することはほとんどありません。

于 2012-12-10T02:05:50.893 に答える