0

有没有办法可以在 CSS 中创建一个仅限 IE 的元素?

与其他浏览器相比,我需要 IE 中的边距不同。我怎样才能在实际的样式表中做到这一点?

4

3 回答 3

4

据此(正如@GOD 所说,在 220 毫秒内用谷歌找到它。谷歌是你的朋友。

针对所有版本的 IE

<!--[if IE]>
    <link rel="stylesheet" type="text/css" href="all-ie-only.css" />
<![endif]-->

定位除 IE 之外的所有内容

<!--[if !IE]><!-->
    <link rel="stylesheet" type="text/css" href="not-ie.css" />
 <!--<![endif]-->

仅针对 IE 7

<!--[if IE 7]>
    <link rel="stylesheet" type="text/css" href="ie7.css">
<![endif]-->

仅针对 IE 6

<!--[if IE 6]>
    <link rel="stylesheet" type="text/css" href="ie6.css" />
<![endif]-->

仅针对 IE 5

<!--[if IE 5]>
    <link rel="stylesheet" type="text/css" href="ie5.css" />
<![endif]-->

仅针对 IE 5.5

<!--[if IE 5.5000]>
<link rel="stylesheet" type="text/css" href="ie55.css" />
<![endif]-->

目标 IE 6 和更低版本

<!--[if lt IE 7]>
    <link rel="stylesheet" type="text/css" href="ie6-and-down.css" />
<![endif]-->

<!--[if lte IE 6]>
    <link rel="stylesheet" type="text/css" href="ie6-and-down.css" />
<![endif]-->

目标 IE 7 及更低版本

<!--[if lt IE 8]>
    <link rel="stylesheet" type="text/css" href="ie7-and-down.css" />
<![endif]-->

<!--[if lte IE 7]>
    <link rel="stylesheet" type="text/css" href="ie7-and-down.css" />
<![endif]-->

目标 IE 8 和更低版本

<!--[if lt IE 9]>
    <link rel="stylesheet" type="text/css" href="ie8-and-down.css" />
<![endif]-->

<!--[if lte IE 8]>
    <link rel="stylesheet" type="text/css" href="ie8-and-down.css" />
<![endif]-->

目标 IE 6 和更高版本

<!--[if gt IE 5.5]>
    <link rel="stylesheet" type="text/css" href="ie6-and-up.css" />
<![endif]-->

<!--[if gte IE 6]>
    <link rel="stylesheet" type="text/css" href="ie6-and-up.css" />
<![endif]-->

目标 IE 7 和更高版本

<!--[if gt IE 6]>
    <link rel="stylesheet" type="text/css" href="ie7-and-up.css" />
<![endif]-->

<!--[if gte IE 7]>
    <link rel="stylesheet" type="text/css" href="ie7-and-up.css" />
<![endif]-->

目标 IE 8 和更高版本

<!--[if gt IE 7]>
    <link rel="stylesheet" type="text/css" href="ie8-and-up.css" />
<![endif]-->

<!--[if gte IE 8]>
    <link rel="stylesheet" type="text/css" href="ie8-and-up.css" />
<![endif]-->
于 2013-05-12T11:46:11.080 回答
2

除了@Adrien Lacroix 所说的,这就是你所需要的

.element{
    background: gray; /* standard */

    background: pink\9; /* IE 8 and below */

    *background: green; /* IE 7 and below */

    _background: blue; /* IE 6 */
}

如果你需要的话,还有这些

仅限 IE6

* html #div { 
    height: 300px;
}

仅限 IE-7

*+html #div { 
    height: 300px;
}

仅限 IE-8

#div {
  height: 300px\0/;
}

IE-7 和 IE-8

#div {
  height: 300px\9;
}

仅非 IE-7:

#div {
   _height: 300px;
}

隐藏 IE 6 和更低版本:

#div {
   height/**/: 300px;
}

或者

html > body #div {
      height: 300px;
}
于 2013-05-12T13:29:12.897 回答
1

至少有两种方法可以做到这一点。

  • 仅 IE 样式表

    <!--[if IE]> <link rel="stylesheet" href="css/ie.css" type="text/css"/> <![endif]-->

  • Javascript - 如果找到 IE,请检查用户代理并应用必要的样式 - 最好是 jQuery。或者,你可以试试这个

于 2013-05-12T11:47:33.210 回答