这是一个令人困惑的行为,我在FireFox和Chrome中看到:我有一个HTML文件,其样式来自两个CSS文件。有时样式适用于第二个文件,有时来自第一个文件。怪异的行为可以看出,在下面的例子:是否应该从最新的设置中应用CSS规则?
HTML文件:
header 1 | header 2 | header 3 |
---|
cssTHTDquestion1.css:
table th,table td{
background-color:red;
}
cssTHTDquestion2.css:
th,td{
background-color:green;
}
现在我会期望看到这个输出(因为cssTHTDquestion2.css包含在cssTHTDquestion1.css之后):
而是我得到这个(指款式cssTHTDquestion1.css了即使cssTHTDquestion2.css设定的最新设置更高的优先级):
即使萤火虫(相当意外地)显示应用cssTHTDquestion1.css中的设置:
为了解决这个问题,我可以改变cssTHTDquestion2.css看起来像这样:
table th,table td{
background-color:green;
}
但是为什么改变th,td到table th,table td改变优先级?我在这里错过了什么?为什么颜色是从cssTHTDquestion1.css而不是cssTHTDquestion2.css应用的? cssTHTDquestion2.css稍后被包含(在HTML代码中),所以我认为它具有更高的优先级。