问题描述
我试图让我的表格数据在悬停在表格行上时改变颜色。那可能吗?我试着到处搜索,但似乎没有一个符合我的描述。
当我将鼠标悬停在表格行上时,我只想更改“Hello World”的颜色。因此,当我将鼠标悬停在表格行中的任何位置时,只有表格数据“Hello World”会改变颜色。
table tr:hover {
color: white
}
<table>
<tbody>
<tr>
<td> Hello World </td>
<td> Greetings </td>
</tr>
</tbody>
</table>
解决方法
如果您只想在将鼠标悬停在表格行的任何部分上时更改特定单元格,请为该单元格指定一个类并在您的选择器中使用它:
table tr:hover td.change{
color: white
}
<table>
<tbody>
<tr>
<td class="change"> Hello World </td>
<td> Greetings </td>
</tr>
</tbody>
</table>
这将设置当行悬停时第一个单元格的颜色。
tr {
color: blue;
}
tr:hover td:first-child {
color: red;
}
<table>
<tbody>
<tr>
<td> Hello World </td>
<td> Greetings </td>
</tr>
</tbody>
</table>
这将在行悬停时为具有 accent
类的任何单元格设置颜色。
tr {
color: blue;
}
tr:hover .accent {
color: red;
}
<table>
<tbody>
<tr>
<td class="accent"> Hello World </td>
<td> Greetings </td>
</tr>
</tbody>
</table>