html代码:
<table class='cTable'><th>Title</th>
<tr><td>Item1</td></tr>
<tr><td>Item2</td></tr>
<tr><td>Item3</td></tr>
</table>
CSS代码:
.cTable tr {
display: none;
}
这件事,不仅隐藏了行,也隐藏了头部。有什么方法可以避免吗?
我希望在可能的情况下不要在每个tr元素上放置display: none;
。
的jsfiddle:
我试过了:
HTML
<table class='cTable'><th class='cTableTH'>Title</th>
<tr><td>Item1</td></tr>
<tr><td>Item2</td></tr>
<tr><td>Item3</td></tr>
</table>
CSS:
.cTable tr {
display: none;
}
.cTableTH {
display: block;
}
但也不起作用。
答案 0 :(得分:2)
你的HTML错了。改变方式:
<table class='cTable'>
<tr><th class='cTableTH'>Title</th></tr>
<tr><td>Item1</td></tr>
<tr><td>Item2</td></tr>
<tr><td>Item3</td></tr>
</table>
.cTable tr {
display: none;
}
.cTable tr:first-child {
display: table-row;
}
直接在<th>
内提供<table>
是错误的。即使你给,它进入<tr>
然后显示。无论您在隐藏的<th>
内向<tr>
提供什么都不起作用。
答案 1 :(得分:1)
答案 2 :(得分:1)
您可以尝试使用:first-child
cTable tr:not(:first-child){
display:none;
}
<table class='cTable'><tr><th class='cTableTH'>Title</th></tr>
<tr><td>Item1</td></tr>
<tr><td>Item2</td></tr>
<tr><td>Item3</td></tr>
</table>
它似乎在这里工作:http://jsfiddle.net/vT4r9/14/
答案 3 :(得分:1)
这是不正确的HTML。定义表格的correct way正在使用<thead>
和<tbody>
。试试这个:
<table class='cTable'>
<thead>Title</thead>
<tbody>
<tr><td>Item1</td></tr>
<tr><td>Item2</td></tr>
<tr><td>Item3</td></tr>
</tbody>
</table>
使用这个CSS:
.cTable tbody tr {
display:none;
}
答案 4 :(得分:0)
这个怎么样?
.cTable td {
display: none;
}
隐藏单元格而不是行应该就足够了。此外,您应该将th
包装在tr
中,如其他人已经指出的那样。
答案 5 :(得分:0)
我认为您可以隐藏这样的列:
<style>
.cTable td {
display: none;
}
</style>