浮动定位BFC边距合并

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

 a,脱离文档流不占据文档流中的空间,因此浮动元素后面的文档流中的元素会占据浮动元素的位置
 b,多个浮动元素并行排列占据一行
 c,文本遇到浮动元素边框会另起一行排列,表现成围绕浮动元素。
 d,如果有其它元素有清除浮动,同一层的浮动元素则会另起一行放置

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

清除浮动:如果某个元素因为周围的浮动元素产生了影响,清除浮动可以使该元素换到下一行,清除浮动就消除这种影响

  1. clear:both right left
    2)使用父容器形成BFC

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

1)5种定位方式

a,inherit:从父元素继承position属性的值
b,static:静态文档流,默认布局方式
c,raletive:相对定位,相对于元素原来的位置定位,原来的位置保留在原来的位置不动。一般用于微调整元素自身位置
d,absolute:绝对定位,脱离正常文档流,相对于除了static的祖先元素进行定位,如果没有,则相对于html定位。另外,如果父容器设置了padding则left,right,top,bottom这些属性的值是默认的padding的值,auto。一般用于使用相对位置的场景,在父元素上加个relative,在给子元素设定absolute进行相对偏移。
e,fixed:固定定位,相对于浏览器窗口定位。一般用于广告、一些固定提示栏等你想要固定持续显示的内容
f,sticky:新属性,表现为position:relative和position:fixed合体的属性

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

设置元素层叠顺序,值越高,则优先显示在上方

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

区别:relative只是把元素移开,该元素的坑还在原来静态文档流中的位置,不会影响文档流中其他元素的布局, 负margin把元素移开,该元素移开之前的位置不会保留,会影响文档流中其他元素的布局。

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

1)BFC是“Box Formating Context”指得是“块级格式化上下文”,它是一个独立的块级渲染区域,这个区域拥有自己的规则来约束块级盒子的布局,并且这种布局与区域外部无关

a. 浮动,float的值不为none
b. position的值为absolute、fixed、flex
c. overflow 的属性值不为 visible
d. display的值为inline-block、table-cell、table-caption

a,防止外边距合并
b,防止正常文档流中元素占据浮动元素的位置
c,消除文字围绕浮动元素
d,解决浮动元素造成的高度塌陷

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

1)只有在普通文档流中会出现外边距合并,脱离了文档流的不会出现外边距合并

a,正数的情况下合并外边距最大的数
b,负数的情况下合并绝对值最大的数
c,一正一负的情况下两数带符号相加

a,不同BFC的元素不会外边距合并
b,如果是父子关系,父元素设置了padding或边框也可以阻止父子外边距合并

图片.png

代码

1,代码和效果

2,代码和效果

3,代码和效果

4,代码和效果

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容