10

私はそれが行われるべきではないことを知っています、しかし私は今のところ簡単な修正が欲しいだけです、そしてそれは私にこれのための適切な修正を見つける時間を与えるでしょう。

\9次のような追加を試みたので、CSSを使用してIE8のみをターゲットにするにはどうすればよいですか?

margin:100px\9;

ただし、IE9にも影響します。IE9ではサイト全体が正常に表示されるため、これは望ましくありません。

4

4 に答える 4

19

HTML5 ボイラープレートから、元はPaul Irishから:

<html>タグを次のように変更します。

<!--[if lt IE 7 ]> <html lang="en" class="ie6"> <![endif]-->
<!--[if IE 7 ]>    <html lang="en" class="ie7"> <![endif]-->
<!--[if IE 8 ]>    <html lang="en" class="ie8"> <![endif]-->
<!--[if IE 9 ]>    <html lang="en" class="ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html lang="en"> <!--<![endif]-->

次に、IE8 は .ie8 クラスを html タグに追加します。IE の他のすべてのバージョンについても同様です。その後、次のことができます。

.ie8 {
    margin:100px;
}

編集: no-jsクラスを 削除し、 lang=""属性をあなたの言語に更新してください。ありがとう、まぶた。

于 2011-05-02T01:30:42.457 に答える
3

ルート関数を使用できます

:root #element { color:pink \0/IE9; } /* IE9 + IE10pp4 */

IE でのみハックする

#element {
color:orange;
}
#element {
*color: white;    /* IE6 + 7, doesn't work in IE8/9 as IE7 */
}
#element {
_color: red;     /* IE6 */
}
#element {
color: green\0/IE8+9; /* IE8 + 9 + IE10pp4  */
}
:root #element { color:pink \0/IE9; }  /* IE9 + IE10pp4 */
于 2013-02-04T07:41:34.283 に答える