logo

moreleft_nav2

聯系我們


徐州云網信息技術有限公司

咨詢熱線:13395298990

聯系電話:15895233239 15366794958

咨詢熱線:0516-66771678

網址:www.t7966t.com

地址:徐州市泉山區萬科淮海天地三街區2號樓-1305


售前咨詢:kefu@xuzhouyun.com

業務受理:yewu@xuzhouyun.com

技術支持:jishu@xuzhouyun.com

開戶行:江蘇省農村信用社前進支行(314303000309)

賬 號: 3203020131010000004947

moreleft_nav2

行業動態


moreleft_nav2

相關知識


HEML與XHTML的區別


HEML與XHTML的區別
發布時間: 2014/3/10 15:41:47 被閱覽數: 2339 次 來源: 徐州云網信息技術有限公司

HTML與XHTML的區別一節主要是翻譯了w3c的 Differences with HTML 4 文章.

XHTML文檔須具有良好完整的排版(well-formed)

編排良好性(Well-formedness)是XML引入的一個新概念.從本質上說,元素須有結束標簽,或者須以特殊方式書寫,而且元素須嵌套.

盡管SGML規定重疊(overlapping)是非法的,但現有的瀏覽器普遍允許重疊.

正確:嵌套元素(nested elements)

<p> <em>XHTML教程</em>.</p>
不正確:層疊元素(overlapping elements)

<p> <em>XHTML教程</p>.</em>
元素和屬性名須小寫

對于所有HTML元素和屬性名, XHTML文檔須使用小寫. 因為XML是大小寫敏感的.如 <li> 和 <LI> 是不同的標簽.

對非空元素,須使用結束標簽

在基于SGML的HTML4中的一些隱含結束意義的元素允許忽略結束標簽.XML不允許忽略結束標簽.除了在DTD中被聲明為空的元素,所有元素須有結束標簽.

正確:結束的元素(terminated elements)

<p>的XHTML教程.</p><p>的CSS教程.</p>
不正確:未結束的元素(unterminated elements)

<p>的XHTML教程.<p>的CSS教程.
屬性值須在引號中

所有的屬性值須在引號中,即使是以數字形式的屬性值

正確:在引號中的屬性值(quoted attribute values)

<table rows="3">
不正確:不在引號中的屬性值(unquoted attribute values)

<table rows=3>
屬性小化

XML不支持屬性小化.屬性-屬性值須完整成對的寫出.像disabled,checked這樣的屬性名不能在不指定屬性值的情況下出現.

正確:非小化屬性(unminimized attributes)

<input checked="checked">
不正確:小化屬性(minimized attributes)

<input checked>
空元素

空元素須有結束標簽,或者起始標簽須以/>結束.例如,<br/>或<hr></hr>.參看HTML兼容性指導HTML Compatibility Guidelines中的信息,以保證向后兼容HTML 4用戶代理程序.

正確:結束的空元素(terminated empty elements)

<br/><hr/>
錯誤:未結束的空標簽(unterminated empty elements)

<br><hr>
屬性值中的空白字符處理

用戶代理處理屬性值時將根據XML的下面方法操作Section 3.3.3:

刪去引導和后序空白符
將一個或多個空白符(包括換行)轉換成單個字符間空間
Script and Style 元素

XHTML中,script和style 元素被聲明為#PCDATA內容形式,因此,<和&被看作是標識的開始,&lt和&amp等HTML實體將被XML處理器看作為實體引用而分別被認為是<和&.將script和style元素的內容隱蔽在CDATA標記中避免了這些實體的擴張.

<script>
<![CDATA[
... unescaped script content ...
]]>
</script>
CDATA部分被XML處理器識別,表現為文檔對象模型中的一個結點.參看Section 1.3的DOM LEVEL 1推薦標準[DOM].

替代的方式是使用外部script和style文檔.

SGML排斥

SGML給作者的DTD可以指定在一個元素內部禁止出現的元素.這樣的禁止在XML中是不可能的.

例如,嚴格的HTML 4 DTD"禁止"任何深度的’a’元素對另一’a’元素的嵌套.在XML中無法寫出這些的"禁止".雖然這些禁止不能被定義在DTD中,但是一些元素不應該被嵌套.對不能被嵌套的元素Element Prohibitions的總結.

具有’id’和’name’屬性的元素

HTML4定義了name屬性的元素有a,applet,form,frame,iframe,img and map.HTML4還引入了id屬性.這兩個屬性都是被設計用為片段標識符.

在XML中,片段標識符是ID,每個元素只能有一個ID類型的屬性.因此,在XHTML1.0中,id屬性被定義為ID類型.為保證XHTML1.0文檔是結構良好(well-structured)的XML文檔,在定義一個片段標識符時,XHTML文檔須使用id屬性,即使是對那些以前用name屬性的元素.參看 HTML Compatibility Guidelines,確保XHTML文檔以text/html媒體類型使用時,這些"錨(anchors)"能向后兼容.

注意,在XHTML 1.0中,name屬性是不贊成使用的,在以后的XHTML版本中將被刪除.

做個總結:

標簽不能重疊,可以嵌套
標簽與屬性都要小寫
標簽都要有始有終,要么以</p>形式結束,要么以<br />形式結束
每個屬性都要有屬性值,并且屬性值要在雙引號中
別用name用id :)



上兩條同類新聞:
  • 小型網站如何制作
  • 如何進行一個好的網站的設計?

  • 久久精品欧美日韩精品