盒子模型(下)

外边距的重叠

在网页中相邻的上下方向的外边距会发生外边距的重叠
相邻兄弟元素的外边距重叠后会取最大值的一个!
如果父子元素的垂直外边距相邻了,则子元素的外边距会设置给父元素!

!高度塌陷

一般我们不把父元素的高度设为固定值 !但是这样子元素浮动后会造成父元素的高度塌陷,我们要尽量避免这种事情!解决方法就是开启BFC!

解决高度塌陷

首先了解BFC: BFC(Block Formatting Context)格式化上下文,是css中的隐含属性!

开启BFC后的特点

1.父元素的垂直外边距不会和子元素重叠
2.开启BFC的元素不会被浮动元素覆盖
3.开启BFC的元素可以包含浮动的子元素

开启BFC的方法:只能间接开启

1.设置元素的浮动(不推荐)
2.设置元素的绝对定位(不推荐)
3.设置元素为inline-block(不推荐)
4.将元素的overflow设置为一个非visible的值(推荐)

解决塌陷的最佳方法

1.为一个元素最后添加一个空的内容,2.将元素设置为块
3.清除浮动元素的影响

   元素名:after{
        /*添加一个内容*/
        content: "";
        /*转换为一个块元素*/
        display: block;
        /*清除两侧的浮动*/
        clear: both;
    }

开启hasLayout(类似BFC)解决塌陷:IE6以下运用

      元素名{
        zoom: 1;
    }

清除浮动(clear)

clear用于清除元素周围的浮动元素的影响,也就是元素不会因为上方出现了浮动元素而改变位置
可选值:

  • left:忽略左侧浮动
  • right:忽略右侧浮动
  • both:忽略全部浮动
  • none:不忽略浮动,默认值

定位 position

相对定位(relative):通过left,top,bottom,right 设置偏移量

特点:--不会脱离文档流 ,没有偏移量不会有变化,相对元素本来的位置进行定位,不会修改元素性质,提升级别,不会修改元素性质

绝对定位(absolute): 设置偏移量同上

特点:脱离文档流,相对于开启定位的祖先元素(离他最近)的位置,提升层级,会将元素变为块元素

固定定位(fixed):和绝对定位差不多

特点:永远相对于窗口的初始位置(0,0)IE6 不支持

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,801评论 1 92
  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,342评论 2 66
  • relative:生成相对定位的元素,通过top,bottom,left,right的位置相对于其正常位置进行定位...
    zx9426阅读 965评论 0 2
  • 一,浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响? 浮动模型是一种可视化格式模型,浮动...
    DeeJay_Y阅读 901评论 0 4
  • 主要内容: 浮动的介绍、清除浮动、各种定位、BFC以及外边距合并的介绍。 浮动 什么是浮动元素 浮动元素是floa...
    苦瓜_6阅读 591评论 0 0