You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

鼠标悬停表格区域外时右侧出现额外列的问题解决咨询

解决表格悬停时出现额外列的问题

先帮你揪出问题根源:你现在用了嵌套表格的结构——把实际的两列表格塞进了另一个外层表格的单个<td>里,再加上内外层表格都设了width:75%,当鼠标滑到外层<td>的空白区域(也就是内层表格没填满的部分)时,.expCode td:hover的背景样式会让这部分看起来像一列额外内容,这就是你看到的“莫名多出来的列”。

要搞定这个问题,其实很简单,只需要两步:

1. 删掉多余的嵌套结构

那个外层的.expCode表格完全是多余的,直接把内容表格的class改成expCode就行,没必要多套一层表格。

2. 统一样式设置

把原本给外层表格的样式直接应用到内容表格上,顺便加上border-collapse: collapse让边框合并得更整齐,避免出现多余的间隙。

修改后的完整代码:

CSS 代码

tr.even { background-color: #FFFFFF; }
tr.odd { background-color: #EEEEEE; }
.expand b{ font-size:30px; }
.xhide { }
.expCode td:hover { background-color: #ddd; }
.expCode th { 
  padding-top: 12px; 
  padding-bottom: 12px; 
  text-align: center; 
  font-size:16px; 
  background-color: #276B8E; 
  color: #FFFFFF; 
}
.expCode{ 
  border-color:grey; 
  width:75%; 
  border-collapse: collapse; /* 合并边框,避免间隙 */
}

HTML 代码

<table class="expCode" border="1" cellspacing="0">
  <thead>
    <tr>
      <th style="width:25%">Column1</th>
      <th style="width:50%">Column2</th>
    </tr>
  </thead>
  <tbody>
    <tr class="even">
      <td>Text</td>
      <td><p>Text</p></td>
    </tr>
    <tr class="odd">
      <td> Text</td>
      <td><p>Text</p></td>
    </tr>
    <tr class="even">
      <td>Text</td>
      <td><p>Text</p></td>
    </tr>
  </tbody>
</table>

这样改完之后,鼠标悬停时只会触发实际表格单元格的背景变化,再也不会出现那种“额外列”的视觉假象了。

内容的提问来源于stack exchange,提问作者Deepika Bansal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:58:57