最新的Web开发教程

HTML和XHTML


XHTML是HTML写为XML。


什么是XHTML?

  • XHTML代表可扩展超文本标记语言
  • XHTML几乎是相同的HTML
  • XHTML比HTML更严格
  • XHTML是HTML定义为XML应用
  • XHTML是由所有主要的浏览器都支持

为什么XHTML?

互联网上的许多页面包含"bad" HTML。

这个HTML代码在大多数浏览器罚款(even if it does not follow the HTML rules)

<html>
<head>
  <title>This is bad HTML</title>

<body>
  <h1>Bad HTML
  <p>This is a paragraph
</body>

今天的市场是由不同的浏览器技术。 有些浏览器的计算机上运行,​​一些浏览器在手机或其他小型设备上运行。 更小的设备往往缺乏资源或解释权"bad"的标记。

XML是其中的文件必须注明正确的标记语言(be "well-formed")

如果你想学习XML,请阅读我们的XML教程

通过结合HTML和XML的优势,XHTML的开发。

XHTML是HTML重新设计的XML。


从HTML最重要的差异:

文档结构

  • XHTML DOCTYPE是强制性
  • 所述xmlns在属性<html>强制性的
  • <html> <head> <title> ,和<body>强制性

XHTML元素

  • XHTML元素必须被properly nested
  • XHTML元素必须被closed
  • XHTML元素必须lowercase
  • XHTML文档必须有one root element

XHTML属性

  • 属性名称必须为lower case
  • 属性值必须用quoted
  • 属性最小化forbidden

<!DOCTYPE ....>是必需的

XHTML文档必须有一个XHTML DOCTYPE声明。

所有的完整列表XHTML文档类型在我们的HTML标签参考中找到。

<html> <head> <title><body>元素也必须存在,并且xmlns在属性<html>必须指定文档的XML命名空间。

此示例示出了具有最小所需标签的XHTML文档:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title>Title of document</title>
</head>

<body>
  some content
</body>

</html>

XHTML元素必须正确嵌套

在HTML中,一些元件可被不正确地相互嵌套,如下所示:

<b><i>This text is bold and italic</b></i>

在XHTML中,所有的元素必须正确的相互嵌套,就像这样:

<b><i>This text is bold and italic</i></b>

XHTML元素必须始终关闭

这是错误的:

<p>This is a paragraph
<p>This is another paragraph

这是对的:

<p>This is a paragraph</p>
<p>This is another paragraph</p>

空元素也必须关闭

这是错误的:

A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">

这是对的:

A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />

XHTML元素必须小写

这是错误的:

<BODY>
<P>This is a paragraph</P>
</BODY>

这是对的:

<BODY>
<P>This is a paragraph</P>
</BODY>

XHTML属性名必须小写

这是错误的:

<table WIDTH="100%">

这是对的:

<table WIDTH="100%">

属性值必须加引号

这是错误的:

<table width=100%>

这是对的:

<table WIDTH="100%">

属性简写是不允许的

错误:

<input type="checkbox" name="vehicle" value="car" checked />

正确:

<input type="checkbox" name="vehicle" value="car" checked="checked" />

错误:

<input type="text" name="lastname" disabled />

正确:

<input type="text" name="lastname" disabled="disabled" />

如何转换HTML到XHTML

  1. 一个XHTML加入<!DOCTYPE>到每一页的第一行
  2. 一个添加xmlns属性为每个页面的html元素
  3. 将所有元素名称为小写
  4. 关闭所有空元素
  5. 将所有的属性名称为小写
  6. 引用所有属性值

验证XHTML与W3C验证

把你的网址在下面的框中: