html - 如何突出显示两个表格行,其中一行有一个具有“rowspan”属性的单元格?
问题描述
这是表格的样子:
table {
border-collapse: collapse;
}
<table border="1">
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
</table>
我想要实现的是,当用户将鼠标悬停在其中一行上时,另一相邻行以及用户悬停的行都会突出显示。我试过这个:
table {
border-collapse: collapse;
}
table tr:nth-child(odd):hover {
background: #CCC;
}
table tr:nth-child(odd):hover + tr {
background: #CCC;
}
table tr:nth-child(even):hover {
background: #CCC;
}
<table border="1">
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
</table>
这几乎可行,但是当您将鼠标悬停在显示“第 2 行文本在此处”的行上时,只有该行会突出显示。是否有针对此问题的仅 HTML/CSS 解决方法?
我在想的是类似的东西<rowgroup>
。
解决方案
tbody
标签是一个组,您可以多次使用它:
table {
border-collapse: collapse;
}
tbody:hover {
background: #CCC;
}
<table border="1">
<tbody>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
</tbody>
<tbody>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
</tbody>
<tbody>
<tr>
<td rowspan="2">Text here</td>
<td>The row 1 text goes here</td>
</tr>
<tr>
<td>The row 2 text goes here</td>
</tr>
</tbody>
</table>
推荐阅读
- android - 图像角半径
- python - Python3.7的参数扫描
- logstash - 麋鹿 | 日志文件 grok 过滤格式未推送到弹性搜索中
- reactjs - 如何仅更改子组件而父组件在路由更改时不重新渲染?
- android - ConnectivityManager.TYPE_WIFI 在代码中显示已弃用。我在 M 以上版本中使用了网络功能,想要删除已弃用的警告
- angular8 - @angular/material 自动完成的性能问题
- javascript - 为什么它给我 'this.state.UserData.map' 不是一个函数?
- jenkins - 将 Helm 图表保存在远程服务器中以进行 Jenkins 部署的最佳实践
- sass - 使用 scss 从变量添加网格中的列
- spring-security - 在 jhipster 生成的应用程序中使用 Spring Security 进行用户模拟