Skip to content

Commit 3885edf

Browse files
feat: add CSS Syntax Definition
1 parent 97c4bed commit 3885edf

File tree

1 file changed

+115
-0
lines changed

1 file changed

+115
-0
lines changed
+115
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
---
2+
title: CSS Syntax Definition
3+
date: 2024-01-05 00:28:47
4+
tags:
5+
- Frontend
6+
- CSS
7+
categories:
8+
- Frontend
9+
- CSS
10+
thumbnail:
11+
cover:
12+
toc: true
13+
recommend: 1
14+
keywords:
15+
uniqueId: '2024-01-05 00:28:47/CSS Syntax Definition.html'
16+
mathJax: false
17+
---
18+
19+
CSS 语法定义规则
20+
21+
## 关键字
22+
23+
### 全局关键字
24+
25+
全局关键字触发特别注明,通常可在所有 CSS 特性上直接使用,也不会在 CSS 特性的语法定义中另行注明
26+
27+
- `initial` 显式指定为属性的默认值
28+
- `inherit` 显式指定为父元素的属性的计算值
29+
- `revert` 重置值并取消用户任何的更改
30+
- `revert-layer` 重置值并取消用户当前级联层中任何的更改
31+
- `unset` 若属性不可继承,等价于指定为 `initial`;若属性不可继承,等价于指定为 `inherit`
32+
33+
### 普通关键字
34+
35+
一部分属性会包含一部分关键字,其会被指定一个特殊的含义;通常会在 CSS 属性的语法定义中说明
36+
37+
## 数据类型
38+
39+
### 基本数据类型
40+
41+
一部分数据类型在许多 CSS 特性中通用,通常用方括号包裹,如 `<string>`
42+
43+
### 复杂数据类型
44+
45+
一部分数据类型仅在少部分 CSS 特性中专属使用;这些数据类型中,一部分引用其他的 CSS 属性的语法定义,如 `<'border-top'>`;另外一部分则是基于其他数据类型,根据一定的规则生成,如 `<shape-box>`;亦包括一部分 CSS 函数的语法定义,如 `<calc()>`
46+
47+
## 数据类型组合子
48+
49+
### 括号
50+
51+
`[]` 符号将多个条目、组合符和乘数组合成一个组件;它用于语法的分组以绕过优先级规则
52+
53+
### 并置
54+
55+
用空白符分隔多个条目、组合符和乘数,即为并置
56+
57+
### 双与
58+
59+
连接多个条目,指示各条目均必须出现,但顺序不限
60+
61+
如:`A && B` 匹配 `A B` `B A`;但不匹配 `A` `A B A`
62+
63+
注意*并置*的优先级高于&&,如 `A && B C` 等价于 `A && [ B C ]`
64+
65+
### 双杠
66+
67+
分隔多个条目,指示各条目需至少出现一次,但顺序不限
68+
69+
如:`A || B` 匹配 `A B` `B A` `A` `B`;但不匹配 `A B A`
70+
71+
注意&&的优先级高于||,如 `A || B && C` 等价于 `A || [ B && C ]`
72+
73+
### 单杠
74+
75+
分隔多个条目,指示各条目需恰好出现一次
76+
77+
如:`A | B` 匹配 `A` `B`;但不匹配 `A B` `B A`
78+
79+
注意||的优先级高于|,如 `A | B || C` 等价于 `A | [ B || C ]`
80+
81+
## 数据类型乘数
82+
83+
### 星号
84+
85+
指示对应条目可不出现、出现一次或出现多次
86+
87+
### 加号
88+
89+
指示对应条目可出现一次或出现多次
90+
91+
### 问号
92+
93+
指示对应条目可选,即可不出现或出现一次
94+
95+
### 大括号
96+
97+
指示对应条目需出现指定范围内的次数或次数范围
98+
99+
如:`A B{1,3}` 匹配 `A B` `A B B` `A B B B`;但不匹配 `A` `A B B B B`
100+
101+
### 井号
102+
103+
指示对应条目可出现一次或出现多次,但需使用逗号分隔
104+
105+
井号亦可接大括号以指定重复的次数
106+
107+
### 感叹号
108+
109+
指示对应条目组必选,且其中的条目至少出现一次,即使条目组中格式允许条目可选
110+
111+
## 数据类型范围
112+
113+
部分数据类型可以限定值的范围,使用中括号表示
114+
115+
`<integer [1,∞]>` 指示值需要为大于1的整数

0 commit comments

Comments
 (0)