csscss-selectorspseudo-class

What's the difference between CSS3's :root pseudo class and html?


I can't seem to find much information about this.

Smashing Magazine seems to be saying that html and :root are the same thing but surely there must be a tiny difference?


Solution

  • From the W3C wiki:

    The :root pseudo-class represents an element that is the root of the document. In HTML, this is always the HTML element.

    CSS is a general purpose styling language. It can be used with other document types, not only with HTML, it can be used with SVG for example.

    From the specification (emphasis mine):

    This specification defines Cascading Style Sheets, level 2 revision 1 (CSS 2.1). CSS 2.1 is a style sheet language that allows authors and users to attach style (e.g., fonts and spacing) to structured documents (e.g., HTML documents and XML applications).