4

我在 Internet Explorer 中的表格单元格内的绝对定位存在一些问题(特别是 9,但我确信问题也存在于 <9 中)。我试图强制表格单元格内的 div 占据整个单元格。在 chrome/ff/safari 中使用:

div {
    position: absolute;
    top:0;
    bottom:0;
    right:0;
    left:0;
}

td {
    position: relative;
}

但是由于某种原因,IE 的行为完全不同。我根本无法根据表格单元格为 div 提供动态高度。这是一个例子来说明我在说什么。它可以在 chrome/ff/safari 中按我的需要工作,但在 IE 中已损坏。有没有办法让它在 IE 中以同样的方式工作?谢谢!

4

2 回答 2

3

如果有人仍然对此感兴趣;一个简单的解决方案将解决 IE 10(我当前的目标)上的问题。

您需要有一个嵌套的 div 来定位您的绝对定位元素:

<td>
    <div>
        <a href="#">FULL HEIGHT</a>
    </div>
</td>

然后添加一些 css,包括 IE 的 lil 技巧:

td {
    position: relative;
    height: 1px; // IE FIx
}
td > div {
    height: 100%;
}
td > div a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    // Beauty only
    background-color: orange;
    color: white;
    text-decoration: none;
}
于 2018-03-16T13:56:20.560 回答
1

我建议你不要将你的元素定位到所有方向,只使用其中两个,而是为你的 div 使用 size。

喜欢:

div {
    position: absolute;
    top:0;
    bottom:0;
    width: 100%;
    height: 100%
}

td {
    position: relative;
    width: 400px;
    height: 400px;
}
于 2012-06-05T15:49:12.530 回答