在一个CSS类中组合不同的用户代理属性

时间:2012-11-22 13:48:55

标签: html css google-chrome internet-explorer-8 cross-browser

当用户在其上输入错误内容时,我想将大纲颜色放入文本框中。问题是IE8不支持outline属性(至少我测试没有成功)所以我使用border代替:

但我想将border用于IE8,将outline用于支持它的浏览器。

.myclass
{
  border: ; // IE8 should use this
  outline: ; // Browser that support it must ignore the above one and get this.
}

我使用IE8和Chrome测试过,这两个属性都应用于Chrome浏览器中,而且只适用于IE8中的边框。

示例:

.myclass
{
  border: 1px solid red;
  outline:#00FF00 dotted thick;
}

http://jsfiddle.net/puD97/

谢谢。

1 个答案:

答案 0 :(得分:0)

谁说IE8不支持outline属性?

如果您想为IE和其他浏览器使用不同的样式,请使用IE特定的cstylesheet评论使用IE特定的样式表

<!-- This will be ignored by all browsers but IE -->

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

或定位任何特定的IE版本

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

或在您的网页中使用此

<!--[if IE 8]>
    <style>
      /* Styles goes here */
    </style>
<![endif]-->