Misapprehensions (citations to follow) abound about the purpose of the class attribute, which is often referred to, plural, as "CSS classes".
The wording in the spec should be changed to more clearly indicate the semantic nature of the class attribute, when used properly, and indicate the validity of its use in this way.
Every HTML element may have a class attribute specified.
The attribute, if specified, must have a value that is a set of space-separated tokens representing the various classes that the element belongs to.
The classes that an HTML element has assigned to it consists of all the classes returned when the value of the class attribute is split on spaces. (Duplicates are ignored.)
Assigning classes to an element affects class matching in selectors in CSS, the getElementsByClassName() method in the DOM, and other such features.
There are no additional restrictions on the tokens authors can use in the class attribute, but authors are encouraged to use values that describe the nature of the content, rather than values that describe the desired presentation of the content.
Please add and sign suggestions, so that a composite may be produced at later date. Emboldening may be used to identify changes, and will not be conveyed to the final version.
- replace the final paragraph with...
- There are no additional restrictions on the tokens authors can use in the class attribute, but authors are encouraged to use values that describe the semantic nature of the content, rather than values that describe the desired presentation of the content. Pigsonthewing 16:00, 11 August 2010 (UTC)
- A Touch Of Class
- Class For Meaning Not For Show
- Competant Classing, by Eric Meyer for discussion of choosing class names in (X)HTML
- Class attributes are about more than styling - Ryan King dispells common misconceptions about the HTML class attribute.