CSS代码问题: margin-left:10px; 边框距左10像素 什么情况下要从宽里减去这10像素 什么时候不用减去呢?

如题所述

最简单的记忆的方法是:只要这个属性设置了宽度又设置了边距,就必须减去这10像素。

因为一个完整的模块实际宽度是由它的你设置的宽度+内边距+外边距+边线,所以说假如你设置的宽度是他本来的实际宽度的话,如果你想加上内边距,外边距或者边线,你就必须从你设置的宽度里减去他们。
当然你如果你在这个属性里没有设置宽度就不用加减去了,因为它会按照父级的宽度来自适应的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-02
不同的浏览器和不同的css版本处理方式不同。具体请看http://wenku.baidu.com/view/9c7b5edaa58da0116c174950.html
第2个回答  2011-03-02
当DIV设置宽度为固定值时候就需要减去margin值,如果DIV未设定宽度或者设为100%的时候,就可以不用减
举例1:
<div style="width:100px;">
<div style="margin-left:10px; width:90px"></div>
</div>
举例2:
<div>
<div style="margin-left:10px; "></div>
</div>
第3个回答  2011-03-02
如果一个div中定义了width,就需要减去这个宽度。
如果没有设置,就不需要减去减去。
但是在一个div 中,最关注的应该是padding
一个width是X像素的话,padding是Y像素,整个DIV的是X+Y