,我想了解一下下面的代码:CSS和重写样式只能部分
<html>
<head>
<title>Test HTML</title>
<link rel="stylesheet" type="text/css" href="test.css">
</head>
<body>
<table class=foo cellpadding="2" cellspacing="2">
<tr>
<td><b>Contingency Table:</b></td>
<td><table class=bar border="2" align="left">
<tr><td>blaa</td><td>blaa</td><td>blaa</td></tr>
<tr><td>blaa</td><td>blaa</td><td>blaa</td></tr>
<tr><td>blaa</td><td>blaa</td><td>blaa</td></tr>
</table>
</td>
</tr>
</table>
</body>
</html>
与下面的CSS:
table {
border-width: 2px;
border-spacing: 2px;
border-style: solid;
}
table.bar {
border-color: red;
background-color: white;
}
table.bar td {
background-color: green;
}
table.bar tr {
background-color: black;
}
table.foo {
border-color: blue;
background-color: white;
}
table.foo td {
border-color: black;
background-color: yellow;
}
table.foo tr {
background-color: yellow;
}
的问题是,互换类时,“富“和”bar“在表格及其嵌套表格中,td-tags的风格没有正确设置,或者至少与我预期的不同。当从外部“bar”和内部“foo”更改为外部“foo”和内部“bar”时,除了td元素的颜色外,颜色会按预期更改。我在这里做错了什么,因为表格的其他元素更改正确?
我知道使用table table.foo {...}
可以工作,但这需要知道内部/嵌套表应使用哪种样式,我不太喜欢这个想法。我希望能够在需要时交换样式,并且不在样式表中包含“继承”...此外,在样式表中指定foo或bar样式的顺序对我来说也是不可取的。请纠正我,如果这实际上是常见的HTML/CSS的做法。
谢谢。但为什么然后做表和tr工作,但不是td? – Shadow 2011-02-16 12:11:09
我不认为这是。实际上,tr规则和td规则的颜色看起来是相同的。所以实际上你看到的是td规则。我认为在tr上设置`background-color`实际上并不适用于所有主流浏览器。 – xzyfer 2011-02-16 12:15:56