class-design-pattern: Difference between revisions
Jump to navigation
Jump to search
m (Protected "class-design-pattern" [edit=autoconfirmed:move=sysop]) |
|
(No difference)
|
Revision as of 01:09, 4 April 2013
Class design pattern
Purpose
Use the class-design-pattern to indicate semantic meaning about XHTML elements. See the discussion of semantic-class-names for background.
How to use it
- always use the most appropriately semantic (X)HTML element for the content. if an appropriate semantic element is not available, use
span
ordiv
. always avoid presentational (X)HTML. - add semantics to (X)HTML by using semantic-class-names. The
class
attribute is a space separated list of class names. - always choose names following the microformats naming principles.
Description
This is one of the most frequently occurring design patterns in microformats. Semantic meaning can be indicated on XHTML content by using the class
attribute of an enclosing element. For example, hCard adds information indicating that certain elements represent vCard person or organization, its URL, Formatted Name, and Organization by the class design pattern:
<div class="vcard"> <a class="url fn" href="http://tantek.com/">Tantek Çelik</a>, <span class="org">Technorati</span> </div>
Note in particular:
- the section of the XHTML document that the microformat is being applied to is defined by
class="vcard"
. This is very common among non-trivial microformats. - the use of both inline (<a> and <span>) and block (<div>) level elements. This provides the microformat designer with a range of options for inserting semantic information without interfering with existing presentation
- the use of multiple class names on a single element (such as
"url fn"
). This allows:- single elements to have multiple meanings
- allows adding semantics to existing presentation
Related
See Also
- All microformat design patterns
- John Udell writes about multiple class names
- HTML 4.01 definition of the 'class' attribute, including notes about multiple class names