gpt4 book ai didi

CSS z-index 问题 : works in Firefox, 而不是 Safari?

转载 作者:太空宇宙 更新时间:2023-11-04 00:31:16 30 4
gpt4 key购买 nike

我试图在叠加层上显示特定的表格行。它适用于 Firefox,但不适用于 Safari。我不明白这怎么可能,因为 Firefox 和 Safari 通常以相同的方式呈现这些类型的东西。

<body>

<style>
.overlay {
position:absolute;
width:100%;
height:100%;
background:#000;
opacity: 0.5;
}
</style>

<table>
<tr style="position:relative; z-index:1000; background:#fff;">
<td>show this one on top</td>
</tr>
<tr>
<td>Show these below</td>
</tr>
<tr>
<td>Show these below</td>
</tr>
<tr>
<td>Show these below</td>
</tr>
</table>

<div class="overlay"></div>

</body>

是什么导致了 Safari 和 Firefox 之间的这种差异?

最佳答案

根据CSS 2.1 specifications :

The effect of 'position:relative' on table-row-group, table-header-group, table-footer-group, table-row, table-column-group, table-column, table-cell, and table-caption elements is undefined.

我假设 Firefox 以一种方式实现它,而 WebKit 以不同的方式实现它并且两者都是正确的,因为它是未定义的。这里故事的寓意不是指定表格元素的位置。

我能够通过用 div 包装每个表格单元格的内容并定位 div 来让它工作。我还将叠加层移动到我定位的表格行内(不确定是否有必要)。

<table>
<tr>
<td>
<div style="position:relative; z-index:1000;">
Displays on top in both Safari and Firefox
</div>
</td>
</tr>
<tr>
<td>
<div style="position:relative; z-index:1000;">
Displays on top in both Safari and Firefox
</div>
<span class="overlay"></span>
</td>
</tr>
<tr>
<td>Displays below overlay</td>
</tr>
<tr>
<td>Displays below overlay</td>
</tr>
<tr>
<td>Displays below overlay</td>
</tr>
</table>

关于CSS z-index 问题 : works in Firefox, 而不是 Safari?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3832793/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com