浮动定位BFC边距合并

2017-07-24  本文已影响0人  魔王卡卡

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


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

清除浮动指通过clear属性解决浮动元素的父容器的高度塌陷问题。
清除浮动的方法:

  1. 在父容器最后添加一个空的<div>,对其使用clear属性,清除浮动;
  2. 创建BFC,由于BFC包含浮动的特性,可以达到清除浮动的效果。
    两种方法各有优缺点,其中创建BFC又有很多种方法,每一种方法也有各自的优缺点,所以在清除浮动时一定要谨慎选择最适合的一种。

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

定位方式分为相对定位、绝对定位和固定定位。


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

z-index属性可以控制元素的叠放顺序,z-index值越高,元素的位置越靠近使用者。


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

relative的偏移只是视觉效果上的偏移,元素本身的位置并没有发生变化,对其他元素的位置也不会产生影响。
而负margin会使元素的位置发生变化,对其他元素的位置也会产生影响。


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

BFC全称 Block formatting contexts ,即块级格式化上下文。
生成BFC可以通过以下几种方式:
1. 根元素;
2. float属性不为none;
3. display属性为inline-block、table-cell、table-caption之一;
4. overflow属性不为visible
5. position属性为relative、absolute、fixed之一。
BFC的作用:
1. BFC会阻止垂直外边距(margin-top、margin-bottom)折叠;
2. BFC不会重叠浮动元素;
3. BFC可以包含浮动。


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

当两个元素的垂直外边距相遇时,会合并成一个外边距。
合并后的外边距的大小取合并前两个元素的垂直外边距较大的一个。
根据BFC阻止垂直外边距折叠的特性,将相邻元素放在不同的BFC中,即可防止相邻元素外边距合并。
父子外边距合并的范例
通过范例可以看出,父元素.ct的外边距本应是50px,但由于其子元素.box的外边距是100px,父子外边距发生了合并,所以子元素紧贴父元素的上边,而父元素的上外边距变成了100px。

上一篇 下一篇

猜你喜欢

热点阅读