CSS基础:display的3个常见属性值详解

你好,我是云桃桃。

一个希望帮助更多朋友快速入门 WEB 前端的程序媛。

云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合集

276篇原创内容-更多前端系列内容可以go公众.h:云桃桃

后台回复“前端工具”可获取开发工具,持续更新中

后台回复“前端基础题”可得到前端基础100题汇总,持续更新中

后台回复“前端电子书”可获取20+本精选电子书

前言

display 属性用于控制元素的显示方式:是否显示/如何显示元素。大多数元素的 display 属性有两种状态:块级元素(Block)和 内联元素(Inline)。

除了这两种常见的状态外,还有一些其他的 display 属性取值,如 inline-blockflexgrid 等,用于实现更灵活的布局和样式效果。

因为,对于新手,其他属性相对复杂,本次呢,我们么主要来介绍 display 的 3 个基础常用的属性值。

display 属性值

display 属性的常见取值包括:

  1. block:将元素显示为块级元素,会在页面中独占一行或一块空间,垂直排列。

常见的块级元素包括 <div><p><h1> 到 <h6><ul><ol><li> 等。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Block Elements Example</title><style></style></head><body><!-- div 块级元素 --><div>This is a div block element.</div><!-- p 段落元素 --><p>This is a paragraph block element.</p><!-- h1-h6 标题元素 --><h1>Heading 1 Block Element</h1><h2>Heading 2 Block Element</h2><!-- ul 和 li 列表元素 --><ul><li>Item 1</li><li>Item 2</li><li>Item 3</li></ul></body>
</html>

图片

  1. inline:将元素显示为内联元素,不会独占一行,而是随着内容长度而自动扩展,水平排列。

常见的内联元素包括 <span><a><strong><em><img><input> 等。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Inline Elements Example</title></head><body><!-- span 内联元素 --><span>This is a span inline element.</span><!-- a 锚点元素 --><a href="#">This is an anchor inline element.</a><!-- strong 加粗元素 --><strong>This is a strong inline element.</strong><!-- em 斜体元素 --><em>This is an em inline element.</em><!-- img 图片元素 --><img src="img/heart-fill.png" alt="Example Image" /><!-- input 输入框元素 --><input type="text" placeholder="Enter text" /></body>
</html>

图片

  1. none:将元素隐藏,不占据页面空间。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Display None Example</title><style>/* 隐藏元素 */.hidden {display: none;}/* 普通元素 */.normal {background-color: #ec4a4a;padding: 10px;margin-bottom: 20px;}</style></head><body><!-- 隐藏元素 --><div class="hidden">这是一个隐藏的元素。</div><!-- 普通块级元素 --><div class="normal">这是一个普通的块级元素。</div></body>
</html>

效果如图:

图片

它的主要实际应用场景包括:

  1. 交互性组件的控制:在 Web 应用中,经常会有需要动态显示或隐藏的交互性组件,比如弹出框、菜单等。通过 display: none; 可以控制这些组件的显示和隐藏状态,实现更好的用户交互体验。

  2. 表单元素的条件性显示:有时候需要根据用户的操作或选择来动态显示或隐藏表单的某些部分,比如根据选择的选项显示不同的输入框或下拉菜单,比如地址,选择了省才会出现市、区,比如当你注册网站填错信息的时候,在下方给与的红色提示。使用 display: none; 可以实现这种条件性显示。

  3. 响应式布局中的隐藏元素:在响应式设计中,可能需要根据设备尺寸隐藏或显示特定的元素,以优化用户体验。使用 display: none; 可以在不同的媒体查询条件下隐藏或显示特定的内容。擎不友好的内容,比如重复内容或不相关内容。通过 display: none; 可以隐藏这些内容,同时保持页面的优化。

总的来说,display: none; 是 CSS 中常用的属性之一,在实际开发中具有广泛的应用场景,可以实现页面元素的动态显示和隐藏,提升用户体验和页面交互性。

延伸:

那如果只希望元素不可见,但仍占据位置,可以怎么做?

那就可以用 visibility: hidden; 了。visibility 属性值用于控制元素的可见性,与 display 属性值类似,也有 visible 和 hidden 两个取值。

visibility: visible; 表示元素可见,visibility: hidden; 表示元素不可见,但仍然占据页面空间,这个你可以自己试一下~

更改 display 属性值

更改 display 属性值意味着改变元素在页面中的显示方式,可以将元素从一个类型变换成另一个类型,比如从块级元素变为内联元素或反之。更改 display 属性值的主要场景包括但不限于:

  1. 调整元素的布局方式,例如从块级元素变为内联元素或反之,其实从内联转为块元素的情况较多,比如 a 标签超链接。

  2. 控制列表项或表格元素的显示方式,以实现特定的排版效果。

  3. 实现交互效果,如通过 JavaScript 控制元素的显示与隐藏。

以下是代码,展示如何使用 CSS 更改元素的 display 属性。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Display Property Example</title><style>.convert-block-element {display: block;width: 200px;height: 30px;background-color: #ccc;margin-bottom: 10px;}.convert-inline-element {display: inline;color: blue;}</style></head><body><!-- 转为块级元素 --><h3>转换前的a标签</h3><a href="#">这是链接</a><a href="#">这是链接</a><a href="#">这是链接</a><h3>看,a标签换行了。</h3><a href="#" class="convert-block-element">这是链接</a><a href="#" class="convert-block-element">这是链接</a><a href="#" class="convert-block-element">这是链接</a><hr /><!-- 转换为内联元素 --><h3>转换前的div标签</h3><div>这是普通div</div><div>这是普通div2</div><div>这是普通div3</div><div>这是普通div4</div><h3>看,div在一行了。</h3><div class="convert-inline-element">转为了内联元素</div><div class="convert-inline-element">转为了内联元素2</div><div class="convert-inline-element">转为了内联元素3</div><div class="convert-inline-element">转为了内联元素4</div></body>
</html>

效果如下:

图片

ok,本文完。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/619.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flutter第九弹 构建列表元素间距

目标&#xff1a; 1&#xff09;Flutter Widget组件之间间距怎么表示&#xff1f; 2&#xff09;列表怎么定义子项之间间距&#xff1f; 一、间距的表示组件 列表组件的间距一般采用固定间距&#xff0c;间距占据可见的空间。 已经使用的表示间距的组件 Spacer&#xff1a…

MATLAB实现遗传算法优化公铁水联运

公铁水联运是运输行业的经典问题, 常用智能算法进行优化,比如遗传算法. 公铁水多式联运优化的数学模型如下&#xff1a; 1.模型简介 公铁水多式联运优化问题可以抽象为一个网络流问题&#xff0c;其中节点代表不同的运输方式转换点&#xff08;如公路、铁路、水运的交汇点&a…

x264编码器 MV 预测

H264 编码标准中MV预测的目的 每个分割 MV 的编码需要相当数目的比特,特别是使用小分割尺寸时。为减少传输比特数,可利用邻近分割的 MV 较强的相关性,MV 可由邻近已编码分割的 MV 预测而得。预测矢量 MVp 基于已计算 MV 和 MVD(预测与当前的差异)并被编码和传送。MVp 则取决…

【C++航海王:追寻罗杰的编程之路】C++11(上)

目录 1 -> C11简介 2 -> 统一的列表初始化 2.1 -> {}初始化 2.2 -> std::initializer_list 3 -> 声明 3.1 -> auto 3.2 -> decltype 3.3 -> nullptr 1 -> C11简介 在2003年C标准委员会曾经提交了一份技术勘误表(简称TC1)&#xff0c;使得C…

解决跨域和https不能访问的问题。

本地安装了项目,是一键安装的,安装之后还是apache的web服务器,有个视频服务用的是https的服务,要对这个项目进行二次开发,本地调用没问题,可是别人已调用就跨域。只能本地访问。 现在有两个问题:1.解决跨域问题 2.还要解决https访问的问题。 解决思路,用nginx 的ssl证…

网络编程套接字(三)之TCP服务器简单实现

目录 一、服务端TcpServer 1、tcp_server.hpp 2、tcp_server.cc 二、客户端TcpClient tcp_client.cc 三、服务器和客户端进行通信 四、完整代码 一、服务端TcpServer 首先我们需要对服务端进行封装。我们需要的成员变量有IP地址&#xff0c;端口号port&#xff0c;以及监…

CentOS7下安装mysql8或者mysql5.7

mysql8 1、下载 访问mysql官网下载mysql8软件包 https://dev.mysql.com/downloads/mysql/ 选择相应的版本如&#xff1a;RPM Bundle mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar RPM Bundle 8.0.33 下载地址&#xff1a;https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.…

Android的一些总结

先打开自定义的app显示欢迎->消失 打开桌面应用程序->在桌面应用程序中也要能一键启动打开视频播放的app 桌面应用程序广播接收者进行监听&#xff0c;然后打开服务/activity是可行的。 ########################## 日志&#xff0c;调试&#xff1a; Usb 无线 串口…

Vue3从入门到实战:深度了解相关API

shallowRef 作用&#xff1a;创建一个响应式数据&#xff0c;但只对顶层属性进行响应式处理。 用法&#xff1a; let myVar shallowRef(initialValue); 特点&#xff1a;只跟踪引用值的变化&#xff0c;不关心值内部的属性变化。 shallowReactive 作用&#xff1a;创建一个…

【MySQL】表的基本约束

文章目录 1、约束类型1.1NOT NULL约束1.2UNIQUE&#xff1a;唯一约束1.3DEFAULT&#xff1a;默认值约束1.4PRIMARY KEY&#xff1a;主键约束1.5FOREIGN KEY&#xff1a;外键约束 2、表的设计2.1一对一2.2一对多2.3多对多 1、约束类型 关键字解释NOT NULL指示某列不能存储NULL值…

在线编辑器 CodeMirror

如何优雅的在网页显示代码 如果开发在线编辑器 引入资源&#xff1a; <link rel"stylesheet" href"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.60.0/codemirror.min.css"><script src"https://cdnjs.cloudflare.com/ajax/libs/c…

力扣经典150题第三十题:长度最小的子数组

目录 力扣经典150题解析之三十&#xff1a;长度最小的子数组1. 介绍2. 问题描述3. 示例4. 解题思路方法一&#xff1a;滑动窗口 5. 算法实现6. 复杂度分析7. 测试与验证测试用例设计测试结果分析 8. 进阶9. 总结10. 参考文献感谢阅读 力扣经典150题解析之三十&#xff1a;长度最…

Web前端 Javascript笔记6

BOM 前面的笔记讲的都是DOM&#xff08;文档对象模型&#xff09;&#xff0c;DOM几乎被所有浏览器支持&#xff0c;是DOM的作用为操作HTML文档的重要手段。利用DOM可以对HTML文档中的所有元素&#xff0c;节点进行获取与访问&#xff0c;对标签属性与样式进行设置。 下面是一…

OpenHarmony鸿蒙南向开发案例:【智能窗户通风设备】

样例简介 本文档介绍了安全厨房案例中的相关智能窗户通风设备&#xff0c;本安全厨房案例利用轻量级软总线能力&#xff0c;将两块欧智通V200Z-R/BES2600开发板模拟的智能窗户通风设备和燃气告警设备组合成。当燃气数值告警时&#xff0c;无需其它操作&#xff0c;直接通知软总…

Targeted influence maximization in competitive social networks

abstract 利用口碑效应的广告对于推销产品是相当有效的。在过去的十年中&#xff0c;人们对营销中的影响力最大化问题进行了深入的研究。影响力最大化问题旨在将社交网络中的一小群人识别为种子&#xff0c;最终他们将引发网络中最大的影响力传播或产品采用。在网络营销的实际场…

C++ 继承(一)

一、继承的概念 继承是面向对象编程中的一个重要概念&#xff0c;它指的是一个类&#xff08;子类&#xff09;可以从另一个类&#xff08;父类&#xff09;继承属性和方法。子类继承父类的属性和方法后&#xff0c;可以直接使用这些属性和方法&#xff0c;同时也可以在子类中…

DLT 直接线性变换

DLT 直接线性变换 对于单应变换 x i ′ H x i x_i^{\prime}Hx_i xi′​Hxi​&#xff0c;易知两图中对应的特征点&#xff0c;如何找出所需要的 H H H​&#xff0c;为了解决这个问题&#xff0c;可以采用DLT算法 原理 其中采用Least Squares Error去拟合 其中目标是获得最佳…

【办公类-22-05】20240419 UIBOT填写“PATHS课程”的《SSBS校园行为问卷》

背景需求&#xff1a; 每年都有一个PATHS课程的“家长问卷调查”和“教师问卷调查”需要填写 作为教师&#xff0c;每次要对全班所有的孩子进行评价&#xff0c;每位孩子64题&#xff01; 反复点题目&#xff0c;感觉非常累&#xff0c;工作操作就是两位老师&#xff0c;每人做…

Golang | Leetcode Golang题解之第25题K个一组翻转链表

题目&#xff1a; 题解&#xff1a; func reverseKGroup(head *ListNode, k int) *ListNode {hair : &ListNode{Next: head}pre : hairfor head ! nil {tail : prefor i : 0; i < k; i {tail tail.Nextif tail nil {return hair.Next}}nex : tail.Nexthead, tail my…

U盘秒变0字节?别慌,数据恢复有妙招!

在日常的工作和生活中&#xff0c;U盘已成为我们不可或缺的数据存储工具。然而&#xff0c;有时候我们可能会遇到一个令人头疼的问题&#xff1a;原本存有重要文件的U盘&#xff0c;突然间容量显示为0字节。这意味着U盘中的数据全部丢失&#xff0c;无法读取。那么&#xff0c;…