我很想知道是否可以使用outerwidth
设置div
的{{1}}来忽略填充和边框。
当我将css
设置为div
宽度时,填充和边框将添加到宽度。
如果没有50%
或javascript
,我怎么能解决这个问题?
修改
不想添加其他额外元素
答案 0 :(得分:23)
我想知道是否有办法使用css设置div的外部宽度来忽略填充和边框。
您可以使用box-sizing: border-box
在padding
内计算border
和width
:
div {
box-sizing: border-box;
}
见:http://jsfiddle.net/thirtydot/6xx3h/
答案 1 :(得分:3)
在你的内部嵌套另一个div
,并将填充/边框应用于嵌套的:{/ p>
<div style="width:50%;"> <div style="padding:5px;"> .... </div> </div>
不幸的是,没有纯粹的CSS方法来实现这一点(或者至少我不知道一个)。
答案 2 :(得分:1)
我假设您不想添加更多元素并以稍微不同的方式回答您的问题。
真的,唯一的办法是:
答案 3 :(得分:0)
如果可能的话,我只想在div中添加一个div。
<div id="outerwidth">
<div class="inner">
//Content
</div>
</div>
.outerwidth { width: 50%; }
.inner { padding: 20px; }
答案 4 :(得分:0)
您可以将分配给宽度的50%值拆分为:
width: 46%;
margin: 0 1%; // 0 top/bottom and 1% each for left and right
padding: 0 1%; // same as above
您可以重新计算百分比以满足您的需求,只要总数为50%就可以了。
我会避免使用js修复小的化妆品问题,因为这不适用于js off并会为客户端的浏览器增加额外的工作量 - 想想移动设备,你就会明白为什么性能很重要!