XHTML Syntax
Some More XHTML Syntax Rules
- Attribute names must be in lower case
- Attribute values must be quoted
- Attribute minimization is forbidden
- The id attribute replaces the name attribute
- The XHTML DTD defines mandatory elements
Attribute Names Must Be In Lower Case
This is wrong:
This is correct:
Attribute Values Must Be Quoted
This is wrong:
This is correct:
Attribute Minimization Is Forbidden
This is wrong:
<input checked>
<input readonly>
<input disabled>
<option selected>
<frame noresize> |
This is correct:
<input checked="checked" />
<input readonly="readonly" />
<input disabled="disabled" />
<option selected="selected" />
<frame noresize="noresize" /> |
Here is a list of the minimized attributes in HTML and how they should be written in XHTML:
| HTML |
XHTML |
| compact |
compact="compact" |
| checked |
checked="checked" |
| declare |
declare="declare" |
| readonly |
readonly="readonly" |
| disabled |
disabled="disabled" |
| selected |
selected="selected" |
| defer |
defer="defer" |
| ismap |
ismap="ismap" |
| nohref |
nohref="nohref" |
| noshade |
noshade="noshade" |
| nowrap |
nowrap="nowrap" |
| multiple |
multiple="multiple" |
| noresize |
noresize="noresize" |
The Lang Attribute
The lang attribute applies to almost every XHTML element. It specifies the language of the content within an element.
If you use the lang attribute in an element, you must also add the xml:lang attribute, like this:
| <div lang="it" xml:lang="it">Ciao bella!</div> |
Mandatory XHTML Elements
All XHTML documents must have a DOCTYPE declaration. The html, head, title, and body elements must be present.
This is an XHTML document with a minimum of required tags:
<!DOCTYPE Doctype goes here>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title goes here</title>
</head>
<body>
</body>
</html> |
Note: The DOCTYPE declaration is not a part of the XHTML document itself. It is not an XHTML element. You will learn more about the XHTML
DOCTYPE in the next chapter.
Note: The xmlns attribute in <html>, specifies the xml namespace for
a document, and is required in XHTML documents. However, the HTML validator at
w3.org does not complain when the xmlns attribute is missing. This is because
the namespace "xmlns=http://www.w3.org/1999/xhtml" is default, and will be added
to the <html> tag even if you do not include it.
|