当前位置: 首页 > news >正文

编程笔记 html5cssjs 044 CSS显示

编程笔记 html5&css&js 044 CSS显示

  • 一、display 属性
  • 二、块级元素(block element)
  • 三、行内元素(inline element)
  • 四、disply属性设置
    • (一)Display: none;
    • (二)覆盖默认的 Display 值
    • (三)隐藏元素 - display:none 还是 visibility:hidden?
  • 五、disply属性的值
    • 六、练习
  • 小结

CSS 布局 - display 属性。display 属性是用于控制布局的最重要的 CSS 属性。

一、display 属性

display 属性规定是否/如何显示元素。每个 HTML 元素都有一个默认的 display 值,具体取决于它的元素类型。大多数元素的默认 display 值为 block 或 inline。

二、块级元素(block element)

块级元素总是从新行开始,并占据可用的全部宽度(尽可能向左和向右伸展)。
这个 <div> 元素属于块级元素。
块级元素的一些例子:

<div>
<h1> - <h6>
<p>
<form>
<header>
<footer>
<section>

三、行内元素(inline element)

内联元素不从新行开始,仅占用所需的宽度。
这是段落中的行内 <span> 元素。
行内元素的一些例子:

<span>
<a>
<img>

四、disply属性设置

(一)Display: none;

display: none; 通常与 JavaScript 一起使用,以隐藏和显示元素,而无需删除和重新创建它们。如果您想知道如何实现此目标,请查看本页面上的最后一个实例。
默认情况下,<script> 元素使用 display: none;。

(二)覆盖默认的 Display 值

如前所述,每个元素都有一个默认 display 值。但是,您可以覆盖它。
将行内元素更改为块元素,反之亦然,对于使页面以特定方式显示同时仍遵循 Web 标准很有用。
一个常见的例子是为实现水平菜单而生成行内的 <li> 元素:

li {display: inline;
}

设置元素的 display 属性仅会更改元素的显示方式,而不会更改元素的种类。因此,带有 display: block; 的行内元素不允许在其中包含其他块元素。下例将 元素显示为块元素:

span {display: block;
}

下例将 <a> 元素显示为块元素:

a {display: block;
}

(三)隐藏元素 - display:none 还是 visibility:hidden?

通过将 display 属性设置为 none 可以隐藏元素。该元素将被隐藏,并且页面将显示为好像该元素不在其中。
visibility:hidden; 也可以隐藏元素。但是,该元素仍将占用与之前相同的空间。元素将被隐藏,但仍会影响布局:

五、disply属性的值

值	描述
none	此元素不会被显示。
block	此元素将显示为块级元素,此元素前后会带有换行符。
inline	默认。此元素会被显示为内联元素,元素前后没有换行符。
inline-block	行内块元素。(CSS2.1 新增的值)
list-item	此元素会作为列表显示。
run-in	此元素会根据上下文作为块级元素或内联元素显示。
compact	CSS 中有值 compact,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。
marker	CSS 中有值 marker,不过由于缺乏广泛支持,已经从 CSS2.1 中删除。
table	此元素会作为块级表格来显示(类似 <table>),表格前后带有换行符。
inline-table	此元素会作为内联表格来显示(类似 <table>),表格前后没有换行符。
table-row-group	此元素会作为一个或多个行的分组来显示(类似 <tbody>)。
table-header-group	此元素会作为一个或多个行的分组来显示(类似 <thead>)。
table-footer-group	此元素会作为一个或多个行的分组来显示(类似 <tfoot>)。
table-row	此元素会作为一个表格行显示(类似 <tr>)。
table-column-group	此元素会作为一个或多个列的分组来显示(类似 <colgroup>)。
table-column	此元素会作为一个单元格列显示(类似 <col>)
table-cell	此元素会作为一个表格单元格显示(类似 <td> 和 <th>)
table-caption	此元素会作为一个表格标题显示(类似 <caption>)
inherit	规定应该从父元素继承 display 属性的值。

六、练习

<!DOCTYPE html>
<html lang="zh-cn"><title>CSS显示 编程笔记 html5&css&js</title><meta charset="utf-8" /><style>body {display: block;color: cyan;background-color: teal;margin: 0;text-align: center;}.container {margin: 0 auto; /* 将左右边距设置为自动 */text-align: center;}span {display: block;}p {display: inline;}</style><body><br /><div class="container"><span>把 span 元素设置为块级元素。</span><span>这是第二个 span 元素,本来这个元素是不换行的,现改成换行显示。</span></div><hr /><div class="container"><p>把段落元素设置为内联元素。</p><p>这里第二个p元素,但却被显示到一行了。</p></div><br /></body>
</html>

小结

disply属性可以灵活处理块的实际形态,把自动换行的元素可以改为不换行,反之亦然。这对网页的整体而已就很重要,因此设计网页布局时就一定要配合该属性的设置。

相关文章:

  • ssh: connect to host github.com port 22: Connection refused
  • PGSQL主键序列
  • Hypervisor 和Docker 还有Qemu有什么区别与联系?
  • 鸿蒙开发案列一
  • 基本的 Socket 模型
  • 反序列化字符串逃逸(上篇)
  • 【.NET Core】深入理解异步编程模型(APM)
  • python基础 - 变量
  • 78.网游逆向分析与插件开发-背包的获取-背包类的C++还原与获取物品名称
  • Python基础之文件操作(I/O)
  • html 3D 倒计时爆炸特效
  • mac os电脑用n切换node版本
  • 【ARM 嵌入式 C 入门及渐进7 -- C代码中的可变参数宏详细介绍】
  • 【0247】PG内核checkpoint实现机制分析(2)
  • QT发送request请求
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【mysql】环境安装、服务启动、密码设置
  • conda常用的命令
  • js作用域和this的理解
  • log4j2输出到kafka
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Python3爬取英雄联盟英雄皮肤大图
  • Vim Clutch | 面向脚踏板编程……
  • - 概述 - 《设计模式(极简c++版)》
  • 前端
  • 携程小程序初体验
  • 学习ES6 变量的解构赋值
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • ​渐进式Web应用PWA的未来
  • #、%和$符号在OGNL表达式中经常出现
  • #includecmath
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (接口封装)
  • (区间dp) (经典例题) 石子合并
  • (转)大型网站架构演变和知识体系
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • .NET CF命令行调试器MDbg入门(一)
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • @Transient注解
  • [ solr入门 ] - 利用solrJ进行检索
  • [@Controller]4 详解@ModelAttribute
  • [ACL2022] Text Smoothing: 一种在文本分类任务上的数据增强方法
  • [Android]如何调试Native memory crash issue
  • [Angular 基础] - 自定义指令,深入学习 directive
  • [BJDCTF 2020]easy_md5
  • [BUG] Hadoop-3.3.4集群yarn管理页面子队列不显示任务
  • [bzoj4240] 有趣的家庭菜园
  • [C#7] 1.Tuples(元组)
  • [C++] cout、wcout无法正常输出中文字符问题的深入调查(1):各种编译器测试