博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
大话css之display的Block未解之谜(一)
阅读量:5237 次
发布时间:2019-06-14

本文共 2666 字,大约阅读时间需要 8 分钟。

用了几年的css了,css中inline | block |inline-block|table|flex从来没有做过系统的整理和分析,网上的分析文章也很多,零散。

今天有空,就在这做一下整理分析

  • block

  解释:指定对象为块元素(占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样)

  特点:1.处于常规流中时,如果width没有设置,会自动填充满父容器

      2.可以应用margin/padding
      3.在没有设置高度的情况下会扩展高度以包含常规流中的子元素
      4.处于常规流中时布局时在前后元素位置之间(独占一个水平空间)
               5.忽略vertical-align

      常见问题:1.父子情况下的block元素,在大部分浏览器会垂直外边距合并问题(margin-top,margin-bottom会发生合并)

                   2.垂直上下排列的block盒子外边距合并问题(margin-top,margin-bottom会发生合并)

       3.没有设置高度,子元素是float的,结果auto的height设置无用    

  代表标签:block元素(块元素)大致有:P|H1|H2|H3|H4|H5|H6|UL|OL|PRE| DL | DIV | NOSCRIPT | BLOCKQUOTE | FORM | HR | TABLE | FIELDSET |          ADDRESS(随着html5标准的推进,一些元素将被废除,而一些新的元素将被引入)注意的是并非所有的block元素的默认display属性都是block,像table这种display:table的元素也是block元素。

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

例子包含了1.处于常规流中时,如果width没有设置,会自动填充满父容器

     2.在没有设置高度的情况下会扩展高度以包含常规流中的子元素

      2.可以应用margin/padding

     3.处于常规流中时布局时在前后元素位置之间(独占一个水平空间)

              4.忽略vertical-align

如何解决上面的重叠了,有两种方法,让重叠的div任意一个变成BFC模型

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

 

原理:BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

原理:出现这种现象原因Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

原理:BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样
View Code

原理:1.BFC的区域不会与float box重叠

   2.计算BFC的高度时,浮动元素也参与计算

大多数情况下我们都知道p|H3|div标签是block,但是我们往往忽略了table和form是block

  时间原因,加上自己的懒惰,下一篇我为大家继续分析display这个css特殊属性

转载于:https://www.cnblogs.com/qingkong/p/4456213.html

你可能感兴趣的文章
Spring属性注入
查看>>
Springboot-配置文件
查看>>
Springboot-日志框架
查看>>
SpringBoot-thymeleaf
查看>>
P1192-台阶问题
查看>>
一、使用pip安装Python包
查看>>
spring与quartz整合
查看>>
Kattis之旅——Eight Queens
查看>>
3.PHP 教程_PHP 语法
查看>>
Duilib扩展《01》— 双击、右键消息扩展
查看>>
利用Fiddler拦截接口请求并篡改数据
查看>>
python习题:unittest参数化-数据从文件或excel中读取
查看>>
Android控件之GridView探究
查看>>
在工程中要加入新的错误弹出方法
查看>>
PS 滤镜— — sparkle 效果
查看>>
snmpwalk命令常用方法总结
查看>>
网站产品设计
查看>>
代理ARP
查看>>
go 学习笔记(4) ---项目结构
查看>>
java中静态代码块的用法 static用法详解
查看>>