浮动定位BFC边距合并

2018-01-11  本文已影响0人  柒汾醉

浮动元素有什么特征?

特征

浮动元素对父容器、其他浮动元素、普通元素、文字分别有什么影响?

清除浮动指什么? 如何清除浮动? 两种以上方法

清除浮动不是不要浮动,而是清楚浮动带来的不利影响

方法

.clearfix{zoom:1;}
.clearfix:after{ 
content:"";
display:block;
visible:hidden;
clear:both;
}

然后在需要清除浮动的元素进行调用。

有几种定位方式,分别是如何实现定位的,参考点是什么,使用场景是什么?

绝对定位与固定定位相对定位可以看作特殊的普通流定位,元素位置是相对于它在普通流中位置发生变化,而绝对定位使元素的位置与文档流无关,也不占据文档流空间,普通流中的元素布局就像绝对定位元素不存在一样

绝对定位的元素的位置是相对于距离最近的非static祖先元素位置决定的。如果元素没有已定位的祖先元素,那么他的位置就相对于初始包含块html来定位

因为绝对定位与文档流无关,所以绝对定位的元素可以覆盖页面上的其他元素,可以通过z-index

z-index 有什么作用? 如何使用?

position:relative和负margin都可以使元素位置发生偏移?二者有什么区别

position:relative;只相对自己原本位置发生偏移,不影响其它普通流中元素的位置。margin:除了让元素自身发生偏移还影响其它普通流中的元素。

BFC 是什么?如何生成 BFC?BFC 有什么作用?举例说明

BFC是指块级元素格式化,在同一个BFC中,元素会遵守一些规则,如从上到下排列,边距合并等,如果是相邻两个元素分别处于两个BFC当中,则一般不会遵循这些规则。
作用:
(1) 解决margin重叠问题,在同一个BFC中,相邻元素之间的边距会合并,如果把这两个元素分别放在两个BFC中,name他们的边距就不会合并。一般应用于嵌套关系。
(2)清除浮动。BFC不会重叠浮动元素。

在什么场景下会出现外边距合并?如何合并?如何不让相邻元素外边距合并?给个父子外边距合并的范例

外边距合并出现的三个场景。

合并规则:

总结:

一个box的top margin与第一个子box的top margin
一个box的bottom margin与最后一个子box的bottom margin,但须在该box的height 为auto的情况下
一个box的bottom margin与紧接着的下一个box的top margin
一个box的top margin与其自身的bottom margin,但须满足没创建BFC、零min-height、零或者“auto”的height、没有普通流的子元素。

根元素的外边距不会参与折叠
不设置任何属性的空span和空div不影响任何布局,可以无视之。

上一篇 下一篇

猜你喜欢

热点阅读