The @charset rule specifies the character encoding used in the style sheet. The @charset must be the first element in the style sheet and if several @charset rules are defined then the only first one is used. It can not be used in the <style> element where the character set of the HTML page is relevant.
Property value: This parameter accept single value “charset”.
It is useful when some NON-ASCII characters are used in the content. There are so many ways to define the character encoding of a style sheet. All the browser follow the following methods in the given orders.
- The value of Unicode byte-order character has to placed at the beginning of the file.
- The value is given by the charset attribute of the Content-Type: HTTP header or the equivalent in the protocol used to serve the style sheet.
- Use the character encoding defined by the referring document. This method does not used in HTML 5.
- Assume that the document is UTF-8
Note: Below list describes the correct and incorrect charset encoding:
@charset ‘iso-8859-15’; [Wrong quoting style used, it’s invalid]
@charset “UTF-8”; [More than one space invalid]
@charset “UTF-8”; [Invalid, there is a character (space) before the at-rule]
@charset “UTF-8”; [It Sets the encoding of the style sheet to the Unicode UTF-8]
Supported Browsers: The browser supported by @charset rule are listed below:
- Google Chrome 2.0
- Internet Explorer 5.5 above
- Firefox 1.4
- Safari 4.0
- Opera 9.0