我读的CS埃里克迈耶权威指南。在页162上,它表示以下内容:CSS - “块级元素框的水平分量之和总是等于父级的宽度?”
几乎同样简单的规则说,正常流中块级元素框的水平分量总和总是等于父宽度。
我发现在W3C规范类似通道:
的水平位置和尺寸的非浮动,块级元素是由七个属性确定:“利润率左”,'左边界“,”左侧填充“,”宽度“,”填充右侧“,”边界右侧“和”边距右侧“。这七个和总是等于父元素的'宽度'。
但是,我可以想到一个非常简单的情况,其中上述规则不适用。
# HTML
<div><p>This is a paragraph.</p></div>
# CSS
div { width: 200px; }
p { width: 300px; }
显然我可以设置overflow
来包含p元素。但是我只是想知道我是否错误地解释了规则?
我认为你是正确的,右边距被设置为负利润率,使真正的平等。我只是感到困惑,因为在Chrome检查员,它并没有这样说。不知道为什么。 – Romed7442
@ctcworks这是因为Chrome和我知道的其他每个开发工具都会显示*计算值*,但如果您阅读[第10.3节](http://www.w3.org/TR/CSS21/visudet.html#Computing_widths_and_margins)你会注意到它没有改变,它的*使用值*发生了变化,而且目前还没有浏览器实现[允许获取它的API](http://dev.w3.org/csswg/cssom/) #DOM-getstyleutils-usedstyle)。 –
谢谢!你节省了我很多时间! – Romed7442