display 设置或检索对象是否及如何显示。
display: none 隐藏对象
display:block 除了转换为块级元素之外,同时还有显示元素的意思。
1
2
2
特点: display 隐藏元素后,不再占有原来的位置。
# 1. display的属性值及其作用
属性值 | 作用 |
---|---|
none | 元素不显示,并且会从文档流中移除。 |
block | 块类型。默认宽度为父元素宽度,可设置宽高,换行显示。 |
inline | 行内元素类型。默认宽度为内容宽度,不可设置宽高,同行显示。 |
inline-block | 默认宽度为内容宽度,可以设置宽高,同行显示。 |
list-item | 像块类型元素一样显示,并添加样式列表标记。 |
table | 此元素会作为块级表格来显示。 |
inherit | 规定应该从父元素继承display 属性的值。 |
# 2. 元素显示模式分类
(1)行内元素inline
<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span> 标签是最典型的行内元素。有的地方也将行内元素称为内联元素。
1
- 相邻行内元素在一行上,一行可以显示多个。
- 高、宽直接设置是无效的。
- 默认宽度就是它本身内容的宽度。
- 可以设置水平方向的
margin
和padding
属性,不能设置垂直方向的padding
和margin
; - 行内元素只能容纳文本或其他行内元素。
注意:
- 链接里面不能再放链接;
- 特殊情况链接
<a>
里面可以放块级元素,但是给<a>
转换一下块级模式最安全。
(2)块级元素block
<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>、<div> 标签是最典型的块元素。
1
- 比较霸道,自己独占一行。
- 设置
width
、height
、margin
和padding
都有效; - 宽度默认是容器(父级宽度)的100%。
- 里面可以放行内或者块级元素。
注意:
- 文字类的元素内不能放块级元素。
<p>
标签主要用于存放文字,因此<p>
里面不能放块级元素,特别是不能放<div>
。- 同理,
<h1>~<h6>
等都是文字类块级标签,里面也不能放其他块级元素。
(3)行内块元素
<img />、<input />、<td>
1
它们同时具有块元素和行内元素的特点。有些资料称它们为行内块元素。
- 和相邻行内元素(行内块)在一行上,但是他们之间会有空白缝隙。
- 一行可以显示多个(行内元素特点)。
- 默认宽度就是它本身内容的宽度(行内元素特点)。
- 高度,行高、外边距以及内边距都可以控制(块级元素特点)。