gpt4 book ai didi

css - 表格单元格高度在 IE11 中的计算方式不同

转载 作者:技术小花猫 更新时间:2023-10-29 10:38:53 24 4
gpt4 key购买 nike

我面临的问题是 IE 11 似乎不一致 <td> 内部高度 单个 <tr>而其他浏览器保持不变。

这里有一支笔来说明我的问题:http://codepen.io/anon/pen/emKEBZ

在我的布局中,我有一个绝对定位的伪元素(绿色边框),我想将其显示在(外部)<td> 上。 .我希望它始终与整体一样高 <tr>它在。<td>的内容s 是动态的 - 我无法控制它的大小(就像我在笔中所做的那样)。

我给了height: 100% ,假设每个 <td>在一行中具有相同的高度。

td {
position: relative;
}

td:before {
content: "";
display: block;
position: absolute;
top: 0;
left: -5px;
width: 3px;
height: 100%;
background-color: green;
}

是的,在 Firefox 和 Chrome 中,该高度在同一行的所有单元格中计算出相同的值:

Chrome and Firefox

但在 IE 11 中每个单元格的高度不同:

Ineternet Explorer 1

问题似乎出在 height: 100% 中IE 指的是包含 <td>内部高度(填充内的高度) ,而其他浏览器采用总高度(高度 + 填充 + 边框)。即便如此,所有 <td>内部高度沿着一个<tr>在 Firefox 中是相同的,而在 IE 中则不同。这些方法有错吗?有没有办法强制 IE 像其他浏览器一样工作?

最佳答案

我终于做到了。这是代码,希望对您有所帮助。 Fiddle here.

var spans = document.querySelectorAll( "span.bar" ),
count = spans.length;
while ( count-- ) {
spans[count].style.height = spans[count].parentElement.offsetHeight + "px";
}
body {
padding:15px;
}
table {
border: 1px solid black;
border-spacing: 10px;
cell-spacing: 0;
}

tr {
border: 1px solid red;
}

td {
vertical-align:center;
position:relative;
box-sizing: border-box;
position: relative;
border: 1px solid black;
}

td .bar:first-child,
td .bar:last-child {
display: block;
background: green;
width: 3px;
left: -5px;
height: 100%;
position: absolute; top: 0;
z-index: 1;
}

p {
margin: 0;
background-color: #dedede;
padding: 0px;
}

.tall {
height: 100px;
}

.medium {
height: 60px;
}

.short {
height: 30px;
}
<table cellspacing="1" cellpadding "0" border="0">
<tr>
<td>
<span class="bar"></span><p class="tall">Save me!</p><span class="bar"></span>
</td>
<td>
<span class="bar"></span><p class="medium">From problems</p><span class="bar"></span>
</td>
<td>
<span class="bar"></span><p class="short">With IE</p><span class="bar"></span>
</td>
</tr>
</table>

关于css - 表格单元格高度在 IE11 中的计算方式不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28763820/

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