首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

@charset

@charset CSS 规则 规定的样式表使用的字符编码。它必须是样式表中的第一个元素,而不是前面有任何字符。因为它不是嵌套语句,所以不能在条件组at-rules中使用。如果@charset定义了多个at-rules,则只使用第一个,并且不能style在HTML元素的属性内使用,也不能<style>在HTML页面的字符集相关的元素内使用。

代码语言:javascript
复制
@charset "utf-8";

在某些CSS属性中使用非ASCII字符时,此规则很有用。例如content

由于有几种方法可以定义样式表的字符编码,浏览器将按以下顺序尝试以下方法(只要产生结果就停下来):

  • HTTP标头的charset属性给出的值Content-Type:或用于服务样式表的协议中的等效值。
  • @charsetCSS的规则。
  • 使用引用文档定义的字符编码:元素的charset属性<link>。这种方法在HTML5中已经过时,不能使用。
  • 假定文档是UTF-8

语法

代码语言:javascript
复制
@charset "UTF-8";
@charset "iso-8859-15";

其中:

charset 是<string>表示要使用的字符编码。它必须是在IANA注册管理机构中定义的网络安全字符编码的名称,并且必须用双引号,紧跟一个空格字符(U + 0020),并立即以分号结尾。如果多个名称与编码相关联,则只能使用_preferred标记的名称

形式语法

代码语言:javascript
复制
@charset "<charset>";

实例

代码语言:javascript
复制
@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

扫码关注腾讯云开发者

领取腾讯云代金券