【发布时间】:2016-04-07 12:55:14
【问题描述】:
我有一系列 div 框,后跟一个 textarea 具有相同的类以采用相同的样式,但我注意到 div 似乎自动填充父级的水平宽度,而 @ 987654325@ 没有。提供textarea width:100% 可以解决问题,但是如果我提供共享类margin-left:80px,textarea 会超过父级,而div 框不会。
我只是想知道为什么会发生这种行为,以及是否可以使用textarea 复制它。到目前为止,我最干净的解决方案是提供 textarea width:calc(100%-80px) 但更喜欢更“自然”的解决方案。
这是一些示例代码:-
HTML
<body>
<div class="container">
<div class="box">
DIV
</div>
<div class="box">
DIV
</div>
<form>
<textarea class="box">TEXTAREA</textarea>
</form>
</div>
</body>
CSS
.container {
background: #bbb;
padding: 30px;
box-sizing: border-box;
}
.box {
height: 80px;
background: #888;
box-sizing: border-box;
margin: 0 0 50px 80px
}
textarea {
width: calc(100% - 80px); // CLEANISH SOLUTION
}
这是一个 JSFiddle:https://jsfiddle.net/tndm2eqz/1/
【问题讨论】: