use*_*366 0 javascript css visibility css-tables
我想在加载时隐藏一个表,并根据类名显示其子项之一.可以用CSS做到吗?
我试图这样做,但我认为它继承自display:none;
如果隐藏表格,表格中的所有内容都将被隐藏。
你想隐藏所有的<tr>s 并且只显示每个类
tr{
display:none;
}
tr.showInit{
display:table-row;
}
Run Code Online (Sandbox Code Playgroud)
您无法显示隐藏父级的子级.
但是,您可以隐藏所有其他<td>-s并显示您需要的那些.
<style>
td { display: none }
td.shown { display: table-cell }
</style>
<table>
<tr>
<td> hidden </td>
<td> hidden </td>
</tr>
<tr>
<td class="shown"> shown </td>
<td> hidden </td>
</tr>
<tr>
<td> hidden </td>
<td> hidden </td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
UPDATE
使用JavaScript
var tds = document.getElementsByTagName("td");
for ( var i = 0, size = tds.length; i < size; i++ ) {
if ( !hasClass( tds[i], "shown" ) ) {
tds[i].style.display = "none";
}
}
function hasClass(element, cls) {
return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1;
}
Run Code Online (Sandbox Code Playgroud)
hasClass() 功能