1.CSS元素的显示(display)、可见性(visibility)
display属性设置一个元素应如何显示,visibility属性指定一个元素应可见还是隐藏。
1.1 隐藏元素:display:none与visibility:hidden
隐藏一个元素可以通过把display属性设置为”none”,或把visibility属性设置为”hidden”。但是请注意,这两种方法会产生不同的结果。
- visibility:hidden可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。
- display:none可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。
示例1:
1 |
|
示例2:
1 |
|
1.2 更改块元素和行内元素的显示
块元素是一个元素,占用了全部宽度,在前后都是换行符。
块元素的例子:
<h1>
<p>
<div>
行内元素只需要必要的宽度,不强制换行。
行内元素的例子:
<span>
<a>
通过display: inline; 可以将块元素的显示更改为内联元素的显示。
通过display: block; 可以将内联元素的显示更改为块元素的显示。
示例3:
1 |
|
2.CSS元素的溢出(overflow)
CSS overflow 属性用于控制内容溢出元素框时显示的方式。可以控制内容溢出元素框时在对应的元素区间内添加滚动条。
overflow属性有以下值: (注意:overflow 属性只工作于指定高度的块元素上。)
值 | 描述 |
---|---|
visible | 默认值。内容不会被修剪,会呈现在元素框之外。 |
hidden | 内容会被修剪,并且其余内容是不可见的。 |
scroll | 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。 |
auto | 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。 |
inherit | 规定应该从父元素继承 overflow 属性的值。 |
overflow: visible
1 |
|
2.2 overflow: scroll; 和 overflow: hidden
1 |
|
可以发现scroll会生成滚动条,hidden则会隐藏溢出的内容。
2.3 overflow: auto
1 |
|
可以看出auto在某些方面更为优秀,可以自己判断是否需要生成滚动条,大多数开发情况下都会选择auto。
GitHub Issues