A-A+

XHTML与HTML最主要的区别

本文于2012年07月06日最后更新 网络心得

由于张自然最近正学习html,所以就整理一篇关于html与xtml区别的文章!

HTML 和 XHTML 的区别简单来说,XHTML 可以认为是 XML 版本的 HTML,为符合 XML 要求,XHTML 语法上要求更严谨些。

以下是 XHTML 相对 HTML 的几大区别:

  XHTML 要求正确嵌套

XHTML 所有元素必须关闭

XHTML 区分大小写

XHTML 属性值要用双引号

XHTML 用 id 属性代替 name 属性

XHTML 特殊字符的处理

XHTML 要求正确嵌套

以下是正确的嵌套:

<p>博客心得<strong>张自然博客<strong></p>

以下是错误的嵌套:

<p>博客心得<strong>张自然博客</p></strong>。

XHTML 所有元素必须关闭

在 HTML 中 ,比如<p>,<li> ,这些标记,你可以不写</p>,</li>,但是在 XHTML 里,必须要求写关闭标记 (Closing Tag)。

处理空元素

有些空元素 ,在 XHTML 里的写法是在">"之前加空格和斜杠。比如<br>,应该写成<br />。
以下 是空元素的例子:

<br />
<hr />
<img src = "/images/adpics/1/b027.jpg" alt = "cwdn" />
<link rel="stylesheet" href="/styles/cwdn.css" type ="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" / >

XHTML 区分大小写

HTML 不区分大小写,但是 XHTML 是区分大小写的。

XHTML 语法上要求更严谨些。要积极的看待这个问题。

XHTML 的所有标记和属性都要小写。比如:

<IMG SRC = "/images/adpics/1/b027 .jpg" Alt = "cwdn" />

应该写成:

<img src = "/images/adpics/1/b027.jpg" alt = "cwdn" />

XHTML 属性值要用双引号情况就有所不同。并不强制要求属性值加双引号?

HTML 并不强制要求属性值加双引号。比如你可以写:

<table cellspacing = 0>
<input checked >

但在 XHTML 里,应该写成:

<table cellspacing = "0">
<input checked = "checked" />

XHTML用id属性代替 name 属性HTM 很多元素,比如 a,applet,frame,iframe,img 和 map,有 name

属性。在 XHTML 里是要废除的,而用 id 属性取而代之。比如:

<img src="cwdn.gif" name="cwdn logo" />

应该写成:

<img src="cwdn.gif" id="cwdn logo" />

XHTML 特殊字符的处理& 应该在 XHTML 里应该写成 &。

比如:XHTML 的所有标记和属性都要小写。

You & Me  应该写成:  You & Me

还有如果内嵌 Javascript 代码,在 XHTML 里则应该写成:

<script type="text/javascript">// <![CDATA[//]]></script>

浏览器的角度

以上是从协议标准的角度来看待这个问题的。如果从浏览器的角度来看待这个问题,情况就有所不同。

考虑一下,如果把 XHTML 写得很不严格,浏览器会怎么做?是不是会弹出一个对话框,写着“这个网站的开发人员技术不过关,写的不是正宗的XHTML 文件,咱不显示”?显然,如果浏览器做成这个样子,倒贴钱也是不会有人用的。

给张自然个人博客留言