How XHTML Differs from HTML
Because XHTML is an XML language, its syntax is more strict and differs from HTML in these key ways:
All element and attributes must be lowercase. For example,
<a href="example.com">. . .</a>.All elements must be terminated--that is, they must include an end tag. For example,
<p>. . .</p>.Empty elements must be terminated as well. This is done by including a slash at the end of the tag. A space is commonly added before the slash for backward compatibility with older browsers. For example,
<hr />,<img />,<meta />.All attribute values must be contained in quotation marks (either single or double). For example,
<td colspan="2">.All attribute values must be explicit and may not be minimized to one word, as is permitted in HTML. For example:
checked="checked"selected="selected"multiple="multiple"
Nesting restrictions are more strictly enforced. These restrictions are explicitly stated:
An
aelement cannot contain anotheraelement.The
preelement cannot containimg,object,applet,big,small,sub,sup,font, orbasefont.The
formelement may not contain otherformelements.A
buttonelement cannot containa,form,input,select,textarea,label,button,iframe, orisindex.The
labelelement cannot contain otherlabelelements.
The special characters
<,>,&,', and"must always be represented by their character entities, including when they appear within attribute values. For example,<,>,&,', and"(respectively).In HTML, the
name
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access