我在这里找到了一个与我的几乎相同的案例。但是接受的答案对我不起作用,所以我希望我提出一个新问题是可以的。
下图是我想在所有主流浏览器(至少 IE8+、Firefox 和 Chrome)中实现的目标。放置在 TD 内的 INPUT 填充其父级的宽度和高度。
我的问题是我无法使用下面的代码片段在 Chrome 中完成它。提前致谢
更新:我在 Chrome 上的问题解释说:如果您仔细观察,顶部和底部边框有 1 或 2 像素的填充。这是我在 Windows 7 上的 Chrome 版本 47.0.2526.111 m(请在新窗口中打开以看得更清楚)
UPDATE2:样本上的大错误。DIV 在不使用 box-sizing 的情况下很好地适应其父级。我真正想要的是 INPUT 也能适应他们的父母。刚刚再次更新了我的代码片段。
table {
border-collapse: collapse;
width: 100%
}
td {
height: 100px;
border: 1px #ccc solid;
}
input {
border: 1px #ccc solid;
height: 100%;
width: 100%;
box-sizing: border-box; /* works fine with IE8+ */
-moz-box-sizing: border-box; /* works fine Firefox */
-webkit-box-sizing: border-box; /* height is not correct in Chrome */
/*-webkit-box-sizing: content-box; width is not correct in Chrome */
}
<table>
<tr>
<td>
<input type="text" value="this INPUT need to adapt to its parent TD">
</td>
</tr>
</table>