Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CSS2.2【三】语法与基本数据类型 #3

Open
fearnliu opened this issue Nov 14, 2017 · 0 comments
Open

CSS2.2【三】语法与基本数据类型 #3

fearnliu opened this issue Nov 14, 2017 · 0 comments
Labels

Comments

@fearnliu
Copy link
Owner

语法

关键字

关键字具有标识符的形式,关键字不得放在双引号之内。

供应商特定扩展

在CSS中,标识符可以-_开头。以-或·_开头的关键字和属性名称保留用于特定供应商的扩展。此类供应商扩展具有以下形式之一:

  • - + 供应商标识符 + - + 有意义的名字
  • _ + 供应商标识符 + - + 有意义的名字

初始短划线或下划线会保证不被任何当前或未来的CSS Level用于属性或者关键字。因此,典型的CSS实现可能无法识别这些属性,并可能根据处理解析错误的规则忽略它们。然而,由于最初的短划线或下划线语法是语法的一部分,所以CSS2.2实现者应该始终能够使用符合CSS的解析器,而不管它们是否支持任何供应商特定扩展。

CSS开发者应该尽量避免使用供应商特定扩展。

字符和案列

以下规则始终成立:

  • 所有CSS语法在ASCII范围内都是不区分大小写的(即[a-z]和[A-Z]是等价的),除了不受CSS控制的部分。例如,HTML的idclass属性名称,URI的语法。

  • CSS中,标识符(包括元素名称,类和选择器中的ID)只能包含字符[a-zA-Z0-9]和 ISO 10646字符U+0080及以上,加上连字符和下划线;它们不能以数字、两个连字符(--)或数字后跟着连字符开头。标识符也可以包含转义字符和ISO 10646字符作为数字代码。

  • CSS2.2中,反斜线(\)字符可以表示三种类型的字符转义之一。在CSS注释中,反斜线代表自身,如果反斜线紧接在样式表的末尾,它也代表它自身。

    首先,在一个字符内部,一个反斜杠后跟新行被忽略。在字符串外部,一个反斜杠后跟一个新行表示它自身。
    其次,它取消了特殊CSS字符的含义。

语句

一个CSS样式表由一系列语句组成。有两种语句:at-rules和规则集。语句之间可能会有空白字符。

At-rules

At-rules 以一个at关键字开始,@字符后跟一个标识符(例如@import@page)。

一个 at-rule 包含一切直到下一个分号或下一个块,无论哪一个先出现。

实现CSS2.2的UA必须忽略出现在块内或者跟在除@charset@import规则以外的任何非忽略语句的后面的任何@import规则。

一个块以左花括号({)开始,以配对右花括号(})结束。其之间可以是任何token,但圆括号(( )),方括号([ ])和花括号({ })必须总是成对出现,可以嵌套。
单引号和双引号也必须在匹配对中出现,并且它们之间的字符被解析为一个字符串。

规则集、声明块和选择器

@fearnliu fearnliu added the CSS label Nov 14, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant