Firefox边缘失败的原因及解决方案

你为什么要翻译这张字条CSS2已经有人翻译了它,但你看,这是很粗糙的(不是说它是如何,译者是真的值得敬佩!)最近,CSS和XHTML的接触越来越多,但接触越多,混乱就越少。
现在我觉得很多问题的质疑,这是不可能的,因为我们了解皮疹,如矫枉过正,这是不可能的,这是不合理的,是不合适的,容易产生错误,出现错误,如果问题从表象入手,始终是困惑的,还是那句话地,不浮躁。
在本规范中,2个或多个与边距属性相邻的盒模型(可能是相邻的或嵌套的)之间的折叠边距(即边距折叠)(在非空内容、填充区域、边界边界或使用清晰分离方法之间允许)表示为单独的边距。
在CSS2.1,横切口不折叠。
垂直边距可以折叠在一些盒子模型中:
1。在常规文档流中,2个或多个块级框模型相邻的垂直边距将被折叠。
保证金价值的最终计算方法如下:
A,对于正值,取最大值;
B,不是所有的正值,然后取绝对值,然后减去最大值和正值;
c,没有正值,然后取绝对值,然后减去最大值为0。
注意:相邻的盒模型可以由DOM元素动态生成,而不必邻接或继承关系。
2,如果其中一个是浮动(浮动),垂直边缘将不会折叠,甚至浮动箱模型及其子元素。
3、溢出的属性和子元素的元素之间的差距不会被折叠(除溢出价值可见)。
4, set a box model for position:absolute, the vertical margin will not be folded, and even the same as their subelements.
5、设置显示的元素:内联块,垂直边缘不会被折叠,甚至同他们的子元素。
6,如果一个盒子模型的上下边距是相邻的,那么它的边可以折叠并覆盖(折叠)它。在这种情况下,一个元素(位置)的位置取决于其相邻元素的边缘是否折叠。
如果元素的边缘与其父元素的边距顶部折叠在一起,则框模型边框顶部的边界定义与其父边框的边界定义相同。
此外,任何元素的父元素不参与边界的折叠,也不参与计算中只有父元素的边距底。如果元素的边界顶不是零,则元素的边界顶边界位置与它相同。
应用清理元素的边距顶部不与块级父级的边距底部折叠。
请注意,已折叠和覆盖的元素的位置对已折叠的其他元素的位置没有影响。只有当这些元素的元素的布局被安排,边界顶部边界位置是必要的。
7,根元素的垂直边距不会被折叠。
浮动块级元素的边距底部总是位于其后面的流块级同级的浮动下一个边距顶部,除非同一个级别元素使用清除操作。
浮动块级元素的边距顶部与第一浮块级子元素的边距顶部相邻(在流块级子中首先浮动)。如果元素不是边框顶部,则没有填充顶,而子元素不使用清除操作。
如果浮动块级别元素的边距底部满足以下条件,它将与最后浮动块级子元素的边距底部相邻(如果元素没有指定填充底部或边框)。
a,指定高度:自动
最小高度小于实际使用高度的元素(高度)
最大高度大于实际使用高度的元素(高度)
如果一个元素的最小高度属性是0,那么它的边距是相邻的,它没有边框顶部和边框底部,没有填充顶部和填充底部,高度属性可以是0或自动,它不包含一个内联框模型(行框),所有浮动元素(如果有的话)边距都是相邻的。
当一个元素有折叠的边缘,并且使用清除操作时,它的边距顶部将被折叠到与兄弟元素相邻的边缘,但其结果是它的边缘不会被它的块级父元素边距底部折叠。
折叠操作基于填充值、边距和边界值,也就是在浏览器解析所有这些值之后。折叠后计算的余量将包括所使用的不同余量的值。
复制代码代码如下所示:


BR / /加入这一行,在Firefox的ID1缘顶:20px会影响D0,D0和身体上20px和D0 D1以上的间距,没有间隔,和IE浏览器正常显示