2010-04-08 70 views
5

我有一种情况,我正在查看某些CSS属性不会被继承的地方。这围绕着表格和IE8。使用下面的示例HTML我不能让表格中的文本继承绿色。为什么CSS继承在IE8中不适合我?

这适用于Firefox和Chrome,但不适用于IE8,从阅读起,这似乎一直是IE中的一个问题,但本意是在我读的版本中工作。

我试图指定每个可能的继承值,但无济于事问题是IE8中的CSS继承支持是越野车,还是我错过了什么?

我不希望答案改变内联CSS是类,我当然不想在表上留下任何评论,因为这一切都源自于构建和设计内联CSS和表格必不可少的HTML电子邮件。

<html> 
<head></head> 
<body> 
<table style="color: green;"> 
    <tr> 
    <td> 
     <span>Span</span> 
     <p>Paragraph</p> 
     <div>Div</div> 
     <table style="color:inherit;"> 
     <tr> 
      <td>Table</td> 
     </tr> 
     </table> 
    </td> 
    </tr> 
</table> 
</body> 
</html> 

回答

4

你说得对,这很奇怪,虽然我发现添加一个有效的doctype解决了这个问题。 http://jsbin.com/etuti/2

+0

有趣。我敢肯定,我尝试过,可能会刷新错误的页面或其他东西。谢谢。 – rrrr 2010-04-08 13:41:47

+0

很高兴。在ie的怪异模式下,字体格式化非常遗传。 – graphicdivine 2010-04-08 13:48:48

1

我从来没有遇到任何IE浏览器的继承问题。我通常会遇到缺少选择器和属性支持以及定位错误等问题。

难道你没有选择器的正确特性吗?我敢肯定,他们在这个顺序去(从具体到少)

  • 在线style属性(style="color: green;"
  • ID选择(#bob
  • 类选择(.jill
  • 元素选择器(body

如果全部失败,可以添加!important有帮助吗?我会用这个作为最后的手段,因为通常你可以通过提供一个更具体的选择器来给出特定的。