CSS 布局 - display 属性
display
属性是控制布局最重要的 CSS 属性。
display 属性
display
属性用于指定一个元素在网页上的显示方式。
每个 HTML 元素都有一个默认的 display 值,取决于它是哪种类型的元素。大多数元素的默认 display 值是 block
或 inline
。
display
属性用于更改 HTML 元素的默认显示行为。
块级元素
块级元素总是从新行开始,并占据所有可用宽度(向左和向右拉伸到最大)。
块级元素的示例
- <div>
- <h1> - <h6>
- <p>
- <form>
- <header>
- <footer>
- <section>
行内元素
行内元素不会从新行开始,并且只占据必要的宽度。
这是一个段落内的行内 <span> 元素。
行内元素的示例
- <span>
- <a>
- <img>
display 属性值
display
属性有许多值
值 | 描述 |
---|---|
inline | 将元素显示为行内元素 |
block | 将元素显示为块级元素 |
contents | 使容器消失,使其子元素成为 DOM 中上一级的子元素 |
flex | 将元素显示为块级 flex 容器 |
grid | 将元素显示为块级 grid 容器 |
inline-block | 将元素显示为行内块级容器。元素本身被格式化为行内元素,但你可以设置高度和宽度值 |
inline-flex | 将元素显示为行内 flex 容器 |
inline-grid | 将元素显示为行内 grid 容器 |
inline-table | 元素显示为行内 table |
list-item | 让元素表现得像一个 <li> 元素 |
run-in | 根据上下文,将元素显示为 block 或 inline |
table | 让元素表现得像一个 <table> 元素 |
table-caption | 让元素表现得像一个 <caption> 元素 |
table-column-group | 让元素表现得像一个 <colgroup> 元素 |
table-header-group | 让元素表现得像一个 <thead> 元素 |
table-footer-group | 让元素表现得像一个 <tfoot> 元素 |
table-row-group | 让元素表现得像一个 <tbody> 元素 |
table-cell | 让元素表现得像一个 <td> 元素 |
table-column | 让元素表现得像一个 <col> 元素 |
table-row | 让元素表现得像一个 <tr> 元素 |
none | 元素完全移除 |
initial | 将此属性设置为其默认值 |
inherit | 从其父元素继承此属性 |
Display: none;
display: none;
通常与 JavaScript 一起使用,用于在不删除和重新创建元素的情况下隐藏和显示元素。如果你想知道如何实现这一点,请查看本页的最后一个示例。
<script>
元素默认使用 display: none;
。
点击显示面板
此面板包含一个 <div> 元素,该元素默认隐藏(display: none;
)。
它通过 CSS 设置样式,我们使用 JavaScript 来显示它(将其更改为 (display: block;
)。
覆盖默认的 display 值
如前所述,每个元素都有一个默认的 display 值。但是,你可以覆盖它。
将行内元素更改为块级元素,反之亦然,这对于使页面看起来特定方式并仍然遵循 Web 标准非常有用。
一个常见的例子是将行内 <li>
元素用于水平菜单
注意:设置元素的 display 属性只会改变 **元素的显示方式**,而不会改变 **它是什么类型的元素**。因此,具有 display: block;
的行内元素不允许包含其他块级元素。
以下示例将 <span> 元素显示为块级元素
以下示例将 <a> 元素显示为块级元素
隐藏元素 - display:none 还是 visibility:hidden?
display:none

visibility:hidden

重置

可以通过将 display
属性设置为 none
来隐藏元素。元素将被隐藏,页面将显示得好像该元素不存在一样。
visibility:hidden;
也会隐藏元素。
然而,元素仍然会占据与之前相同的空间。元素将被隐藏,但仍会影响布局。
更多示例
display: none; 和 visibility: hidden; 之间的区别
此示例演示了 display: none; 与 visibility: hidden; 的区别。
显示更多 display 类型
此示例演示了更多 display 类型。
结合使用 CSS 和 JavaScript 来显示内容
此示例演示了如何使用 CSS 和 JavaScript 在点击时显示元素。
CSS Display/Visibility 属性
属性 | 描述 |
---|---|
display | 指定元素应如何显示 |
可见性 | 指定元素是否应该可见 |