CSS 数据类型有哪些?怎么用?

文章导读
上一个 测验 下一个 CSS 数据类型定义了可用于各种 CSS 属性的值类型。每种 CSS 属性都期望特定类型的值,理解这些数据类型对于正确样式化和格式化网页内容至关重要。
📋 目录
  1. 语法
  2. 文本数据类型
  3. 数值数据类型
  4. 量纲
  5. 类型组合
  6. 颜色
  7. 图像
  8. 2D 定位
  9. 计算数据类型
  10. 显示
A A

CSS - 数据类型



上一个
测验
下一个

CSS 数据类型定义了可用于各种 CSS 属性的值类型。每种 CSS 属性都期望特定类型的值,理解这些数据类型对于正确样式化和格式化网页内容至关重要。

下面列出的类型是最常见的,但并非任何 CSS 规范中定义的所有类型的完整列表。

语法

selector {
   property: <unit-data-type>;
}      

CSS 语法使用不等号“<”和“>”之间的关键字来表示数据类型。

文本数据类型

这些类型包括关键字、标识符、字符串和 URL。

预定义关键字

表示特定于所使用属性的预定义关键字(例如,auto、inherit、none)。

CSS 全局关键字

下表列出了所有 CSS 全局关键字:

属性 描述
<custom-ident> 用户定义的标识符,例如使用 grid-area 属性指定的名称。
<dashed-ident> 使用 CSS Custom Properties,<custom-ident> 以两个连字符开头。
<string> 已加引号的字符串,例如 content 属性的值。
url() 对资源的引用,例如 background-image 的值。

数值数据类型

这些数据类型表示数量、索引和位置。下表列出了所有数值数据类型:

属性 描述
<integer> 一个或多个十进制单位(09)。
<number> 实数可以包含小数部分,例如 1 或 1.54。
<dimension> 包含单位的数值,例如 23px 或 15em。
<percentage> 包含百分比符号的数值,例如 15%。
<ratio> 比率表示为 <number> / <number>。
<flex> CSS Grid Layout 引入了灵活长度,由带有 fr 单位的 <number> 表示,用于 grid track sizing。

量纲

距离和其他量使用这些类型定义。下表列出了所有量纲:

属性 描述
<length> 长度是一种表示距离的 dimension。
<angle> 角度表示为带有 deg、grad、rad 或 turn 单位的 <dimension>,用于 linear-gradient() 等属性。
<time> 持续时间单位表示为带有 s 或 ms 单位的 <dimension>。
<resolution> 这是一个带有 dpi、dpcm、dppx 或 x 单位标识符的 <dimension>。

类型组合

接受 dimension 和百分比值的 CSS 属性属于此类。百分比值将转换为相对于允许 dimension 的量。接受百分比和 dimension 的属性将使用以下类型之一:

属性 描述
<length-percentage> 可以接受 length 或 percentage 值的一种类型。
<angle-percentage> 可以接受 angle 或 percentage 值的一种类型。
<time-percentage> 可以接受 time 或 percentage 值的一种类型。

颜色

与颜色相关的属性定义了 <color> 数据类型以及其他与颜色相关的类型。

下表列出了所有与颜色相关的数据类型:

属性 描述
<color> 以关键字或数值表示的颜色。
<color-interpolation-method> 确定在不同 <color> 值之间创建过渡时使用的颜色空间。
<hex-color> 描述使用主要颜色分量(红、绿、蓝)以十六进制数字表示的 sRGB 颜色的十六进制颜色语法,以及其透明度。
<system-color> 通常与网页上不同组件的默认颜色选择相关联。
<alpha-value> 表示颜色的透明度。值可以是 <number>(0 为完全透明,1 为完全不透明)或 <percentage>(0 为完全透明,100% 为完全不透明)。
<hue> <absolute-color-functions> 组件定义色轮的 <angle>,可以使用 deg、grad、rad、turn 等单位,或无单位的数字(解释为 deg)。
<hue-interpolation-method> 确定用于 hue 值之间插值的算法。此方法指定基于色轮如何在两个 hue 值之间找到中点。它是 <color-interpolation-method> 数据类型的一个组件。
<named-color> 在语法中指定为 <ident>,通过名称如 red、blue、black 或 light green 来描绘颜色。

图像

CSS Images 规范定义了与图像相关的数据类型,例如渐变。下表列出了所有与图像相关的数据类型:

属性 描述
<image> 指向图像或颜色渐变的 URL。

2D 定位

下表列出了所有与 2D Positioning 相关的数据类型:

属性 描述
<position> 通过提供关键字值(如 top 或 left)或 <length-percentage> 来确定对象区域的位置。

计算数据类型

CSS 数学函数在计算中使用这些数据类型。下表列出了所有计算数据类型:

属性 描述
<calc-sum> 计算是由加法(+)和减法(-)运算符分隔的一系列计算值。此数据类型要求两个值都包含单位。
<calc-constant> 定义 CSS 关键字,用于数值常量如 e 和 π,这些常量可用于 CSS 数学函数。

显示

下表列出了所有与 display 相关的数据类型:

属性 描述
<display-box> 确定元素是否创建 display boxes。
<display-inside> 确定元素的内部显示,指定非替换元素的格式化上下文类型。
<display-internal> 确定内部显示值,这些值仅与特定布局模型相关。
<display-legacy> CSS 2 中 display 属性使用单关键字语法,需要为同一布局模型的块级和内联级变体使用单独的关键字。
<display-listitem> 关键字 list-item 使元素生成一个 ::marker 伪元素,其内容由 list-style 属性指定,并为其自身内容生成指定类型的主框。
<display-outside> 元素的外部 display 类型,在流布局中至关重要,由 <display-outside> 关键字确定。

其他数据类型

下表列出了一些其他数据类型:

属性 描述
<absolute-size> 在 font shorthand 和 font-size 属性中定义绝对字体大小。
<basic-shape> 定义用于 clip-path、shape-outside 和 offset-path 等属性的不同形状。
<blend-mode> 指定元素重叠时应使用的颜色模式。
<box-edge> 定义不同的盒子边缘,例如 content-boxborder-box
<easing-function> 控制元素在两种状态之间过渡或动画的速度。
<filter-function> 表示一种图形效果,它会改变输入图像的外观。
<generic-family> 表示通用字体家族的关键字值。
<gradient> 演示两种或多种颜色之间的渐进过渡。
<ident> 表示用作标识符的任意字符串。
<line-style> 指定线条在特定上下文中如何显示或不显示的内容包含在 <line-style> 枚举值类型中。
<overflow> 与简写属性 overflow 以及长手属性 overflow-block、overflow-inline、overflow-x 和 overflow-y 相关的关键字值由枚举值类型 <overflow> 表示。
<relative-size> 定义相对于父元素计算大小的相对大小。
<transform-function> 变换函数负责在二维 (2D) 和三维 (3D) 空间中旋转、缩放(调整大小)、倾斜(扭曲)或移动元素。