宽度:100%使事情脱离div

Moh*_*qui 3 html css textarea css3

我有一个简单的div,其中我有2个textarea.我将textarea的宽度设置为100%但是它稍微偏离了div.

看到这个小提琴.

HTML:

<div class="offer_a_help">
    <textarea></textarea>
    <br/>
    <textarea></textarea>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.offer_a_help {
    width: 350px;
    height: 250px;
    position: absolute;
    top: calc(100%/2 - 350px/2);
    left: calc(100%/2 - 250px/2);
    background-color: #eee;
    border-radius: 5px;
    border: 1px solid #bbb;
}
.offer_a_help textarea {
    width: 100%;
}
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况,解决这个问题的最简单方法是什么?

Dan*_*iel 7

我相信这可能是textarea有边框或填充的问题.这两个都将以100%宽度计算,并使宽度比容器宽.

您可以添加边框以使填充和边框以宽度而不是IN ADDITION来计算

尝试添加:

.offer_a_help textarea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
Run Code Online (Sandbox Code Playgroud)


mis*_*hik 4

您需要重置填充和边距(我已将边距设置为 -1 以适应外部 div 边框):

演示

.offer_a_help textarea {
    width: 100%;
    margin: 3px -1px;
    padding: 0;
}
Run Code Online (Sandbox Code Playgroud)