CSS参考手册
Miscellaneous Level 2
@charset
该@charset
CSS 规则 规定的样式表使用的字符编码。它必须是样式表中的第一个元素,而不是前面有任何字符。因为它不是嵌套语句,所以不能在条件组at-rules中使用。如果@charset
定义了多个at-rules,则只使用第一个,并且不能style
在HTML元素的属性内使用,也不能<style>
在HTML页面的字符集相关的元素内使用。
@charset "utf-8";
在某些CSS属性中使用非ASCII字符时,此规则很有用。例如content
。
由于有几种方法可以定义样式表的字符编码,浏览器将按以下顺序尝试以下方法(只要产生结果就停下来):
- 位于文件开头的Unicode字节顺序字符的值。
- HTTP标头的
charset
属性给出的值Content-Type:
或用于服务样式表的协议中的等效值。
- 在
@charset
CSS的规则。
- 使用引用文档定义的字符编码:元素的
charset
属性<link>
。这种方法在HTML5中已经过时,不能使用。
- 假定文档是UTF-8
语法
@charset "UTF-8";
@charset "iso-8859-15";
其中:
charset 是<string>
表示要使用的字符编码。它必须是在IANA注册管理机构中定义的网络安全字符编码的名称,并且必须用双引号,紧跟一个空格字符(U + 0020),并立即以分号结尾。如果多个名称与编码相关联,则只能使用_preferred标记的名称。
形式语法
@charset "<charset>";
实例
@charset "UTF-8"; /* Set the encoding of the style sheet to Unicode UTF-8 */
@charset 'iso-8859-15'; /* Invalid, wrong quoting style used */
@charset "UTF-8"; /* Invalid, more than one space */
@charset "UTF-8"; /* Invalid, there is a character (a space) before the at-rule */
@charset UTF-8; /* Invalid, without ' or ", the charset is not a CSS <string> */
规范
Specification |
Status |
Comment |
---|---|---|
CSS Level 2 (Revision 1)The definition of '@charset' in that specification. |
Recommendation |
Initial definition |
浏览器兼容性
Feature |
Chrome |
Edge |
Firefox (Gecko) |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|---|
Basic support |
2.0 |
No support |
1.5 (1.8)1 |
5.52 |
9 |
4 |
Feature |
Android |
Edge |
Firefox Mobile (Gecko) |
IE Mobile |
Opera Mobile |
Safari Mobile |
---|---|---|---|---|---|---|
Basic support |
2.1 |
No support |
1.0 (1.8) |
5.52 |
10.0 |
4 |
Miscellaneous Level 2相关

层叠样式表( Cascading Style Sheets )是一种用来表现 HTML 或 XML 等文件样式的计算机语言。CSS 不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。