HTML是一種基本的Web網頁設計語言,XHTML是一個基於XML的置標語言,兩者也是有一些區別的,文章將給大家介紹XHTML與Html兼容的16條准則。
1.避免將頁面聲明為XML類型。頁面使用UTF-8或者UTF-16字符集。
2.在空元素標簽(不能用來包含內容的標簽)結束符>前加上斜槓/。如:<br />,<hr />等等。
3.當一個非空元素(此標簽是用來包含內容的,如標題,段落)內容為空時,給它一個空白字符,而不要使用像空元素那樣的結束方法。如:當一個沒有內容的P標簽請書寫:<p> </p>而不要寫成<p />。
4.當你的style和scripts內容中出現 <, &, ]]>或者兩個連續的橫槓 --時,請使用外部文件進行引入。
5.避免在元素屬性值中出現斷行或者多個空格。
6.不要在文檔的head部分包含一個以上的isindex元素。此元素不推薦使用。
◆isindex:使浏覽器顯示一個對話框,提示用戶輸入單行文本;
◆在Html 4中,此元素是不推薦使用的,而推薦使用INPUT元素。isIndex的tagName屬性將返回input;
◆此元素是一個塊元素,此元素需要關閉標簽;
◆下面的例子使用 ISINDEX 元素提換了默認的提示:
- <isindex prompt="輸入要搜索的索引關鍵字" />
7.當要給一個元素指定language時,請使用lang和XML:lang屬性。XML:lang的值優先級更高。
8.請使用id屬性當做元素標識符,避免使用name屬性。尤其在這些元素上更不贊成使用name屬性當做它們的標識符:a, applet, form, frame, iframe, img, map。
9.給頁面定義文檔字符集。給xml文檔定義字符集使用<?XML version="1.0" encoding="UTF-8"?>,給XHTML定義字符集使用<meta http-equiv="Content-type" content="text/Html; charset=UTF-8" />。
10.Boolean類型元素屬性值請使用該屬性名。如:checked="checked",Boolean類型元素有:compact, nowrap, ismap, declare, noshade, checked, disabled, readonly, multiple, selected, noresize, defer。
11.HTML 4和XML文檔對象模型指定Html元素和屬性名返回大寫格式。XHtml中元素和屬性名返回小寫格式。
12.使用&替代屬性值中的&符號,如:
http://www.w3cgroup.com/default.ASP?CateID=2&page=2
要比下面的好:
http://www.w3cgroup.com/default.ASP?CateID=2&page=2
13.在XHtml中CSS樣式標簽style及屬性名必須使用小寫。
◆在Html的table中,tbody將會在解析時自動補齊,而在XML中卻不行,所以,需要自己添加上tbody元素,如果在CSS選擇符中使用到了它;
◆CSS對某個具有id屬性的元素進行選擇時,使用#選擇符;
◆CSS對某個具有class屬性的元素進行選擇時,使用.選擇符。
14.如何在解析XML文檔時使用Style元素?在HTML 4和XHtml中,style元素可以用在文檔中定義樣式規則,在XML中,XML stylesheet用來定義樣式規則,為了兼容這個規則,在解析XML文檔時如果需要使用style元素,style元素需要使用id屬性作為標示符,並且,要有一個XML stylesheet引用它,如:
- <?XML-stylesheet href="http://www.w3.org/StyleSheets/TR/W3C-REC.CSS" type="text/CSS"?>
- <?XML-stylesheet href="#internalStyle" type="text/CSS"?>
- <!DOCTYPE Html
- PUBLIC "-//W3C//DTD XHtml 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xHtml1-strict.dtd">
- <Html XMLns="http://www.w3.org/1999/xHtml" XML:lang="en" lang="en">
- <head>
- <title>An internal stylesheet example</title>
- <style type="text/CSS" id="internalStyle">
- code {
- color: green;
- font-family: monospace;
- font-weight: bold;
- }
- </style>
- </head>
- <body>
- <p>
- W3CGroup為大家介紹16條兼容XHTML與Html的指引!
- <code>http://www.w3cgroup.com/article.ASP?id=252</code>.
- </p>
- </body>
- </Html>
15.需要注意Html和XML中的空白字符。有些在HTML文檔中合法的字符,到了XML裡可能就不合法了,如,在HTML中,換頁符(Formfeed character U+000C)被解析為空格,而在XHtml中,由於XML的字符定義,它變得不合法。
16注意特殊字符&apos。(省略號,U+0027)在XML 1.0中有介紹,但卻沒有出現在HTML中,使用'替換'則可在Html 4中使用。
原文鏈接:http://www.w3cgroup.com/article.ASP?id=252