【问题标题】:Overriding inline CSS styles in IE7在 IE7 中覆盖内联 CSS 样式
【发布时间】:2010-08-02 19:28:15
【问题描述】:

我有一个内联 CSS 样式的 html 标记,例如:<body><div style="position:absolute;top:100px;"></body>,我想覆盖这个内联位置属性。所以,我写了一个这样的 CSS 规则:

body > div[style]{position:relative !important;top:0px !important;}

以上代码在 Firefox 中有效。但在 IE7 中它不起作用。我对 IE 有什么遗漏吗?

PS:尽管我可以在 Firebug lite 窗口中看到我被覆盖的属性,但它不会影响我页面上的任何内容。 (请参考attached image)。

【问题讨论】:

    标签: html css inline-styles


    【解决方案1】:

    您的选择器不需要那么具体 - 我不确定,但我不确定 IE7 会理解它。 !important 应该覆盖它。

    你试过了吗?

    body div {position:relative !important;top:0px !important;}
    

    【讨论】:

      【解决方案2】:

      IE7 不支持style 属性选择器:http://reference.sitepoint.com/css/css3attributeselectors

      【讨论】:

      • 这不是 CSS3 属性选择器。它所做的只是匹配任何定义了style 的元素。 reference.sitepoint.com/css/attributeselector
      • 当然,我只是指该页面的兼容性部分,这表明样式不能在 IE7(CSS3 或其他)中的任何属性选择器中使用,经过测试似乎是正确的。
      猜你喜欢
      • 2016-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-05
      相关资源
      最近更新 更多