css - 使用 CSS,如何使溢出 :visible; contents overlap adjacent <td> cells?

标签 css overflow

我的表格有以下 CSS 样式代码:

table {
        table-layout: fixed;
}
td {
        overflow: hidden;
        white-space:nowrap;
}
td:hover {
        overflow: visible;
}

但是,当我将鼠标悬停在 <td> 上时内容(文本)被隐藏的元素,结果是内容变得可见,但在相邻单元格(右侧)的内容后面

我不认为z-index可以应用于表格单元格元素,所以我可以在 td:hover 中指定一个 CSS 属性吗?样式将使我的内容成为 <td>标签与相邻单元格中的内容重叠?

表格元素包含从数据库中提取的文本字符串。在不添加水平滚动条的情况下,表格本身已经尽可能大。

最佳答案

我没有按照我想要的方式解决它,所以仍然想看看是否有人知道该怎么做。

但是,我确实找到了使用以下 CSS 属性的合适替代方案:

table {
    table-layout: fixed;
}
td {
    overflow: hidden;
    white-space: nowrap;
}
tr:hover td {
    overflow: visible;
    white-space: normal;
}

这有效地设置了一个固定的表格大小,并在该大小内保持行紧凑,直到用户将鼠标悬停在表格行上。发生这种情况时,悬停的行会垂直扩展以适合单元格内容。由于 table-layout:fixed 属性,单元格宽度仍然保留。

此解决方案的缺点是,如果您的单元格内容不是带空格的文本,则效果不佳。没有空格的文本不可靠地换行,而对象显然根本不换行。

关于css - 使用 CSS,如何使溢出 :visible; contents overlap adjacent <td> cells?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2718398/

相关文章:

jquery - 修复了 <table> 中的 <thead>

html - 对齐 <img> 标签内的文本?

css - 需要下拉菜单在页面加载时具有一定的宽度,但在单击时显示完整的内容长度

javascript - 仅针对 html 禁用 flex 滚动,但针对溢出 :scroll 的元素进行维护

html - 当窗口缩小时,如何让元素符号元素与图像保持对齐?

html - flex 方向 : column-reverse except the first element

css - 多个 float div-溢出隐藏,部分 View

css - Facebook iframe 网络应用程序 div 滚动到底部

c++ - SDL_FreeSurface 未释放 RAM/RAM 溢出

css - 无法使用 Bootstrap 在 Web 表单应用程序中内联显示