<span style="font-size:14px;"><div>
<p>1</p>
</div>
div{
width:600px;
overflow:auto;
}
p{
width:100%;
padding:10px;
}
p{
width:auto;
padding:10px;
}</span>如果是width:100%,则说明p的width会得到600px就已经充满div区域,然后自己又有padding,所以会出现滚动条。
而width:auto则比较聪明,它是总体宽度(广义,包括width,margin,padding,border这些)等于父级宽度(狭义,内容区,仅指width),所以如果padding已经左右占去20px的空间,那么width给的值就是580px。
所以,如果:
p{
width:auto;
background-color: red;
margin:10px;
padding:10px;
}其实最后实际的width值为560px。
但无论是width:100%还是auto,其计算的参照都是父级内容区width值,而非总宽度值

本文详细解释了CSS中p元素的width属性设置为100%与auto的区别,特别是这两种设置如何影响元素的实际宽度及布局行为。通过具体的样式示例,展示了不同设置下元素宽度的计算方式。
539

被折叠的 条评论
为什么被折叠?



