首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表格样式-col类应覆盖td类..多么?

表格样式-col类应覆盖td类..多么?
EN

Stack Overflow用户
提问于 2011-11-24 20:51:04
回答 3查看 4.6K关注 0票数 2

请看这个小提琴:

http://jsfiddle.net/uqJHf/

我已经将第一列设置为以红色背景显示。

然而,奇数/偶数样式覆盖了它。即使添加了!重要;

有没有办法把这个修好?(而不必向

代码语言:javascript
复制
tr.row_odd td {
    background:#efefef;
}
tr.row_even td {
    background:green;
}
.col1  { background:red !important; }

<table>
<col class="col1"></col>
<tr class="row_odd"><td>test</td><td>test</td></tr>
<tr class="row_even"><td>test</td><td>test</td></tr>
</table>
EN

Stack Overflow用户

发布于 2011-11-24 21:22:39

首先,让我们来处理一下标记。我认为<col>应该是自关闭的,因为它不能包含任何文本或子元素,而且应该包装在<colgroup>中。您甚至可能需要为每一列添加额外的<col>标签(所以4列意味着4个<col>)。

代码语言:javascript
复制
<table>
    <colgroup>
        <col class="col1" />
        <col />
    </colgroup>
    <tr class="row_odd"><td>test</td><td>test</td></tr>
    <tr class="row_even"><td>test</td><td>test</td></tr>
</table>

现在,已经对CSS进行了一些处理,现在看起来这取决于如何将CSS应用于<tr><tr>。如果您删除与<tr>相关的样式,您将看到样式被正确应用。

因此,我得出的结论是,样式是以分层的方式应用的,可能是因为列是表的一种元细节。设想这种情况的一种简单方法是,<tr>标记位于列的顶部,因为您已经为<tr>定义了一个background-color,所以列样式不会显示出来--因为颜色是不透明的。如果您将<tr>background-color设置为RGBA值,您将看到列的颜色“闪耀而过”。

查看小提琴的修改,以进行演示:http://jsfiddle.net/uqJHf/4/

希望这对我有所帮助,因为在我的调查过程中,我也学到了一些新东西。

编辑:似乎不同意我所说的,如果<col>设置了background-color,它似乎不会将RGBA值应用于<tr>。但在Firefox7中工作...

票数 6
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8257360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档