CSS-display属性【看这一篇就够了!!】

6,861次阅读
没有评论

共计 3130 个字符,预计需要花费 8 分钟才能阅读完成。

目录

display 属性

display 属性设置元素显示类型

元素外部显示类型

block 块级元素

inline-block 行内块元素

inline 行内元素

三种元素类型的对比

行内元素和块级元素的互相转换

隐藏元素方法【面试多考】

去掉行内块元素默认的空白间隙

给父元素添加 font-size:0; 同时子元素重写 font-size

 给元素本身添加 float

给图片添加 display:block; 清除图片下面的空隙

display 属性

  • display 可用来:“块级元素 ”、“ 行内元素 ”、“ 行内块元素 ”、“ 互相转换和对比 ”、“ 隐藏元素 ”、“ 空白间隙

display 属性设置元素显示类型

display 属性可以设置元素的“内部 ”和“ 外部”显示类型

外部显示类型:

  • 元素的外部显示类型有 block 块inline 内联
  • 外部显示类型将决定该元素在“流式布局”中的表现

内部显示类型:

  • 内部显示类型“flex 布局 ”、“grid 网络布局”、“ 流式布局
  • 元素的 内部显示类型可以控制其子元素的布局方式

流式布局:

  • 流式布局是在布局进行任何更改之前 ( 默认情况 下),在页面上显示“”和 内联”元素的方式。
  • 流式布局是一种“排版方式 ”,这种排版方式规定了 块级和内联元素 在页面中如何排版显示

【流式布局】中 - 块级元素排版方式

  • 块级盒子会从包含块的顶部开始,按序 垂直排列
  • 同级盒子间的垂直距离会由“margin”属性决定
  • 相邻两个块级盒子之间的垂直间距会遵循外边距折叠原理被折叠 ( 塌陷)

【流式布局】中 - 内联元素排版方式

  • 盒子会从包含块的顶部开始,按序 水平排列
  • 只有 水平外边距 边框 内边距 会被保留
  • 这些盒子可以以不同的方式在垂直方向上对齐:可以底部对齐或顶部对齐,或者按文字底部进行对齐

元素外部显示类型

display可以通过以下 属性值 来指定元素的外部 显示类型

  • block 块级
  • inline-block 块级
  • inline 行内元素

其中,“inline”和“inline-block”又都叫做“内联元素

block 块级元素

常见的 块级元素 有:


    1. ~

      块级元素 特点

      • 独占一行
      • 可以设置 widthheight 属性
      • 在不设置宽度时,宽度默认为父元素内容区宽
      • 文字类元素里不能放其它块元素
      • p标签里不能放 pdiv
      • h1~h6标签里不能放pdi
      
      
        

      div 块级元素

       效果:

      CSS-display 属性【看这一篇就够了!!】

      inline-block 行内块元素

      常见的 行内块元素

      行内块元素 特点

      • 相邻的行内块元素会在一行显示,放不下会换行
      • 相邻的行内块元素之间会有“空白间隙
      • 元素默认宽为它本身内容宽
      • 可设置 widthheight 属性
      
        
      	
      CSS-display 属性【看这一篇就够了!!】 CSS-display 属性【看这一篇就够了!!】 CSS-display 属性【看这一篇就够了!!】

      效果:

      CSS-display 属性【看这一篇就够了!!】

      inline 行内元素

      常见的 行内元素

      行内元素特点:

      • 相邻的行内元素会在一行显示,放不下时会换行显示
      • 设置 width、height 属性是无效的。其宽高随其内容大小而撑开。
      • 行内元素里只能放文本或其它行内元素

      注意:

      • 标签里不能再放 标签
      • 标签中 可以放块级元素
      • 实际开发中,某些情况下会把 a 标签转换为 块级元素
      
      
        我是 span 标签
        我是 span 标签
        我是 span 标签
      

      效果:

      CSS-display 属性【看这一篇就够了!!】

      三种元素类型的对比

      元素类型 排列方式 盒模型属性 内容
      块级(block) 独占一行 width、height 有效 任意元素
      行内块(inline-block) 一行可显示多个 width、height 有效 行内或行内块元素
      内联(inline) 一行可显示多个 width、height 无效 行内或文本元素

      记忆

      从上到下,可包含内容种类逐渐减少

      行内元素和块级元素的互相转换

      我们只需要给对应的元素添加对应的 display 属性值,就可以把元素转换为对应的元素类型。

      • display:block; 将元素转为 块级元素
      • display:inline-block; 将元素转为 行内块元素
      • display:inline; 将元素转为 行内元素
      
        
      	
      div 标签
      div 标签

      效果:

      CSS-display 属性【看这一篇就够了!!】

      隐藏元素方法【面试多考】

      属性 功能 描述
      display:none; 隐藏元素 将元素隐藏,子孙元素全部隐藏不可见,子孙没有方法将它修改为可见。元素 隐藏后不会占用 HTML 空间,就好比 HTML 中没有这个元素
      visibility:hidden; 隐藏元素

      将元素隐藏,子孙元素全部不可见,可以给子孙加入 ”visibility:visible;” 来实现子孙单独可见。

      隐藏后仍占用 HTML 空间,会留下一片空白的区域。

      基本不用

      
      
        

      我在隐藏的元素前面,我是隐藏的元素里的内容 我在隐藏的元素后面。

      我在隐藏的元素前面,我是隐藏的元素里的内容 我在隐藏的元素后面。

       效果:

      CSS-display 属性【看这一篇就够了!!】

      去掉行内块元素默认的空白间隙

      行内块元素之间默认会产生“空白间隙

      
      
        
      1 2 3 4

      效果:

      CSS-display 属性【看这一篇就够了!!】

      产生间隙的原因:

      • 元素被当成行内元素排版的时候,元素之间的空白符 (空格、回车换行) 都会被浏览器处理
      • 这些元素之间的间距会随着字体的大小而变化

      解决办法

      • 给父元素添加 font-size:0px,同时子元素重写 font-size【推荐】
      • 给元素添加float
      • 图片之间的空隙,给图片添加“display:block;”使它成为 图片元素

      给父元素添加 font-size:0; 同时子元素重写 font-size

       给元素本身添加 float

      • 元素添加 float 后,会脱离文档流
      • 父元素未添加高度时,会出现高度塌陷问题,则需要清除浮动造成的问题

      给图片添加 display:block; 清除图片下面的空隙

      
        
      	
      图片未加 display:block; 时的效果 图片添加 display:block; 后的效果

      仔细看,图片未加 display:block;,图片底下会有 空白间隙

    2. 原文地址: CSS-display 属性【看这一篇就够了!!】

        正文完
         0
        Yojack
        版权声明:本篇文章由 Yojack 于2024-11-03发表,共计3130字。
        转载说明:
        1 本网站名称:优杰开发笔记
        2 本站永久网址:https://yojack.cn
        3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
        4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
        5 本站所有内容均可转载及分享, 但请注明出处
        6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
        7 站长邮箱:laylwenl@gmail.com
        评论(没有评论)