CSS 属性的初始值
- 每个 CSS 属性都有一个“初始值”(initial value),这是浏览器在没有其他规则覆盖时为该属性指定的默认值。这个初始值在 CSS 规范中定义。
- 继承属性:初始值只有在根元素上才会被使用(当没有指定值时)。
- 非继承属性:初始值会被用于任意没有指定值的元素。
继承属性
- 继承属性是指子元素会自动继承其父元素的某些属性。例如,
color和font-size是继承属性。如果父元素设置了color: red;,那么除非子元素另有指定,子元素也会使用这个红色。 - 在继承属性的情况下,初始值通常不会被直接使用,除非它是根元素(例如 HTML 文档中的
<html>元素)。根元素是 CSS 继承链的起点,如果没有为继承属性指定值,根元素会使用属性的初始值。
非继承属性
- 非继承属性是指子元素不会从父元素继承这些属性。例如,
display和margin是非继承属性。如果父元素设置了display: flex;,子元素不会继承这个display设置。 - 对于非继承属性,如果某个元素上没有为该属性指定值,浏览器会使用该属性的初始值。在这种情况下,任何没有指定该属性的元素都会应用该属性的初始值。
CSS常见继承属性
在 CSS 中,继承属性是指子元素会自动继承父元素的某些属性值。以下是一些常见的继承属性:
文本相关的属性
color: 文本颜色。font-family: 字体家族。font-size: 字体大小。font-style: 字体样式(如italic)。font-variant: 字体变体(如小型大写字母small-caps)。font-weight: 字体粗细。letter-spacing: 字符间距。line-height: 行高。text-align: 文本对齐方式。text-indent: 首行缩进。text-transform: 文本转换(如大写、小写等)。white-space: 控制空白符的处理方式。word-spacing: 单词间距。
表单相关的属性
direction: 文字方向(如ltr或rtl)。visibility: 元素的可见性。cursor: 鼠标光标样式。
列表相关的属性
list-style-type: 列表标记类型(如disc,circle,square等)。list-style-position: 列表标记位置(如inside,outside)。
表格相关的属性
border-collapse: 表格边框折叠方式。border-spacing: 表格单元格之间的间距。caption-side: 表格标题的位置(如top,bottom)。
其他
quotes: 指定用于引号的符号。
注意
某些属性并不总是继承的,但可以通过指定 inherit 来强制继承。例如,background 和 border 默认情况下是非继承属性,但可以通过 background: inherit; 或 border: inherit; 来强制继承。