首页 > web前端 > css教程 > 正文

css的display属性如何实现块级元素和内联元素的相互转换?

不言
发布: 2018-11-05 18:01:38
原创
5858人浏览过

我们知道html中有两种类型的元素:块级元素和内联元素。display属性可以实现html中块级元素和内联元素的相互转化。话不多说,我们直接看正文。

默认情况下,段落

(块级元素)的默认display值为block,但可以呈现为内联值:

p{ display: inline;}
登录后复制

为什么不使用一个HTML内联元素,比如呢?

因为您选择HTML元素来表示它的意义,而不是它的渲染。如果我们决定一个段落是最适合我们的内容的,我们就不能仅仅为了造型的目的而改变标签。CSS是实现样式的。

简而言之,display允许在不改变其含义的情况下改变元素的类型。

立即学习前端免费学习笔记(深入)”;

每个display选项都有特定的渲染行为:

block 将占用整个宽度

inline 将作为纯文本

inline-block正如它的名字所暗示的那样,是一种块状和内联行为的复合体,是“两全其美”的选择

list-item类似于block占用可用的整个宽度,但显示了一个额外的项目符号

table,table-row并且table-cell都有非常具体的,虽然意外,行为,让更多的有趣布局

display:block

这会将任何元素转换为块元素。

此技术通常用于链接以增加其可点击区域,可通过设置背景颜色轻松评估。

.menu a{ background: red; color: white;}
登录后复制
<ul class="menu">
  <li>
    <a href="#">首页</a>
  </li>
  <li>
    <a href="#">文章</a>
  </li>
  <li>
    <a href="#">视频</a>
  </li>
  <li>
    <a href="#">登录</a>
  </li></ul>
登录后复制

效果如下:

360截图20181105174538628.jpg

如果我们将这些链接转换为block,我们会增加其目标区域:

.menu a{ background: red; color: white; display: block;}
登录后复制

效果如下:

360截图20181105174908786.jpg

display:inline

这会将任何元素转换为内联元素,就好像它们只是简单的文本一样。

它通常用于创建水平导航,其中列表项在语义上但在视觉上没有用处。

<ul class="menu">
  <li>
    <a href="#">首页</a>
  </li>
  <li>
    <a href="#">文章</a>
  </li>
  <li>
    <a href="#">视频</a>
  </li>
  <li>
    <a href="#">登录</a>
登录后复制

效果如下:

360截图20181105175042953.jpg

.menu li{ display: inline;}
登录后复制

效果如下:

360截图20181105175206929.jpg

display: list-item

显示的唯一HTML元素list-item是(不出所料)列表项 

  • ,还有定义描述 

    使用项目符号点(如果在无序列表中

      )或使用增量编号(如果在有序列表中
      )呈现列表项。

      由于这些项目符号和数字的呈现因浏览器而异,并且在CSS中也难以设置样式,因此display: list-item从不使用该规则。实际上,

    1. 通常被渲染为display: block或者display: inline,因为它们更具灵活性。

      display: none

      应用display: none;HTML元素会将其从您的网页中删除,就好像它从未存在于您的代码中一样。

      <p>php中文网</p>
      <p class="class">PHP中文网</p>
      <p>Php中文网</p>
      登录后复制
      .class{ display: none;}
      登录后复制

      效果如下:

      360截图20181105175522199.jpg

      代码中有3个段落,但只有2个出现,好像第2个段落从未存在过。

      visibility: hidden

      CSS属性visibility与display。略有相似。应用会visibility: hidden; 隐藏页面中的元素,但只会将其变为不可见:它仍会占用应有的空间。

      <p>哈哈哈哈</p>
      <p class="class">哈哈哈哈哈哈</p>
      <p class="class">哈哈哈哈哈哈哈哈</p>
      <p>哈哈哈哈哈哈哈哈啦</p>
      登录后复制
      .class{ visibility: hidden;}
      登录后复制

      效果如下:

      360截图20181105175940142.jpg

      代码中有5个段落,只有2个出现,但隐藏段落应该占用的空间仍然存在,但是你看不到它们。

  • 以上就是css的display属性如何实现块级元素和内联元素的相互转换?的详细内容,更多请关注php中文网其它相关文章!

    最佳 Windows 性能的顶级免费优化软件
    最佳 Windows 性能的顶级免费优化软件

    每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

    下载
    来源:php中文网
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    作者最新文章
    最新问题
    开源免费商场系统广告
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习
    PHP中文网抖音号
    发现有趣的

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号