all
all 是一个 简写 CSS 属性,它可以重置元素的所有属性,但 unicode-bidi、direction 和 CSS 自定义属性 除外。它可以将属性设置为其初始值、继承值,或另一个层叠层或样式表来源中指定的值。
试一试
/* no all property */
all: initial;
all: inherit;
all: unset;
all: revert;
<section id="default-example">
<div class="example-container-bg">
<div class="example-container">
<p id="example-element">
This paragraph has a font size of 1.5rem and a color of gold. It also
has 1rem of vertical margin set by the user-agent. The parent of the
paragraph is a <div> with a dashed blue border.
</p>
</div>
</div>
</section>
#example-element {
color: gold;
padding: 10px;
font-size: 1.5rem;
text-align: left;
width: 100%;
}
.example-container {
border: 2px dashed #2d5ae1;
}
.example-container-bg {
background-color: #77767b;
padding: 20px;
}
构成属性
此属性是除 unicode-bidi、direction 和 自定义属性 之外的所有 CSS 属性的简写。
语法
/* Global values */
all: initial;
all: inherit;
all: unset;
all: revert;
all: revert-layer;
all 属性被指定为 CSS 全局关键字值之一。请注意,这些值都不会影响 unicode-bidi 和 direction 属性。
值
正式定义
正式语法
all =
initial |
inherit |
unset |
revert |
revert-layer
示例
在此示例中,CSS 文件除了包含父元素 <body> 的一些样式外,还包含 <blockquote> 元素的样式。结果小节中的各种输出演示了当在 blockquote 规则内为 all 属性应用不同值时,<blockquote> 元素的样式如何受到影响。
HTML
<blockquote id="quote">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</blockquote>
Phasellus eget velit sagittis.
CSS
body {
font-size: small;
background-color: #f0f0f0;
color: blue;
margin: 0;
padding: 0;
}
blockquote {
background-color: skyblue;
color: red;
}
结果
A. 无 all 属性
这是 blockquote 规则内未设置 all 属性的情况。<blockquote> 元素使用浏览器的默认样式,这会给它一个外边距,以及样式表中指定的特定背景和文本颜色。它也表现为一个块级元素:其后的文本位于其下方。
B. all: initial
当 blockquote 规则中的 all 属性设置为 initial 时,<blockquote> 元素不再使用浏览器默认样式:它现在是一个行内元素(初始值),其 background-color 是 transparent(初始值),其 font-size 是 medium,其 color 是 black(初始值)。
C. all: inherit
在这种情况下,<blockquote> 元素不使用浏览器默认样式。相反,它从其父元素 <body> 继承样式值:它现在是一个块级元素(继承值),其 background-color 是 #F0F0F0(继承值),其 font-size 是 small(继承值),其 color 是 blue(继承值)。
D. all: unset
当 blockquote 规则中的 all 属性应用 unset 值时,<blockquote> 元素不使用浏览器默认样式。因为 background-color 是一个非继承属性,而 font-size 和 color 是继承属性,所以 <blockquote> 元素现在是一个行内元素(初始值),其 background-color 是 transparent(初始值),但其 font-size 仍然是 small(继承值),其 color 是 blue(继承值)。
E. all: revert
当 blockquote 规则中的 all 属性设置为 revert 时,blockquote 规则被视为不存在,样式属性值将从应用于父元素 <body> 的值继承。因此,<blockquote> 元素被设置为一个块级元素,其 background-color 为 #F0F0F0,font-size 为 small,color 为 blue——所有值都从 body 规则继承而来。
F. all: revert-layer
CSS 文件中没有定义层叠层,因此 <blockquote> 元素从匹配的 body 规则继承其样式。这里的 <blockquote> 元素被设置为一个块级元素,其 background-color 为 #F0F0F0,font-size 为 small,color 为 blue——所有值都从 body 规则继承而来。此场景是 all 设置为 revert-layer 时行为与 all 设置为 revert 时相同的示例。
规范
| 规范 |
|---|
| CSS 层叠与继承第四级 # all-shorthand |
浏览器兼容性
加载中…
另见
CSS 全局关键字值:initial、inherit、unset、revert、revert-layer