ますます多くのWebサイトでは、XHTMLの使用は非常に速い速度でHTML4を置き換えています。ただし、一部の主流ブラウザは現在XHTMLをサポートしておらず、一部のWebページメーカーはXHTMLとHTML4の違いを十分に理解していないため、Webの開発でXHTMLが遅くなります。
XHTMLはXMLであり、HTMLではありません現在、XHTMLに関する主な誤解の1つは、HTMLの別のバージョンであることです。この誤解を引き起こす事実の1つは、Microsoft Internet ExplorerがMIME形式テキスト/HTMLでXHTMLのみをサポートしており、推奨アプリケーション/XHTML+XML形式ではないことです。
XHTMLページがテキスト/HTMLのMIME形式で解析されている場合、HTMLページとは違いがなく、Text/XMLまたはApplication/XHTML+XMLのMIME形式で解析された場合、厳格なXMLライティングおよび表示ルールに準拠します。
正しいXHTML形式はXMLプログラムであり、書くときは次の厳格なルールに従う必要があります。 1。文字<and&&は、cdataタグに含まれていない限り、xhtmlドキュメントコンテンツに表示されることは許可されていません(<![CDATA [...]]>) 2。コメントラベル(<!--...-->)は、2つの連続した水平バー( - )を含めることができません3。コメントタグ(<!--...-->)に含まれる内容は無視されますスタイルとスクリプトのコンテンツの問題スタイル内の内容とスクリプトタグは、XHTMLが(HTML形式ではなく)XML形式で解析されると、いくつかの異なる違いを引き起こします。
JavaScriptには、XHTMLに存在できない文字が含まれていますJavaScriptの一部の特殊文字は、XHTMLのCDATAタグの外側に存在できない文字です。<script type = text/javascript>
var i = 0;
while(++ i <10){
// ...
}
</script>
注:上記のサンプルコードは、XHTMLまたはXML <で許可されていないタグを使用するため、優れたXHTML形式ではありません。
スタイルとスクリプトのコンテンツでコメントを使用しますHTMLに精通している著者は、通常、コメントタグにスタイルとスクリプトタグの内容を配置するとブラウザにこれらのコンテンツを非表示にすることを理解していますが、一部のブラウザは理解できません。
<style type = text/css>
<! -
ボディ{背景色:青。色:黄色;}
- >
</style>
<script type = text/javascript>
<! -
var i = 0;
var sum = 0;
for(i = 0; i <10; ++ i)
{
sum += i;
}
alert( 'sum =' + sum);
//->
</script>
上記の例は、ブラウザのコメントタグのコンテンツを無視する方法を示しています。同時に、この例は、テキスト/XML形式とアプリケーション/XHTML+XML形式のブラウザのコンテンツの違いも示しています。
Mozilla 1.1+ / Opera 7
CSSは適用されず、JavaScriptは実行されません
Netscape 7.0x / Mozilla 1.0.x
CSSを適用するのではなく、JavaScriptを実行します
インターネットエクスプローラー5.5+
ドキュメントは表示されません。 (参照:https://developer.mozilla.org/ta ... _in_xhtml_documents)
スタイルとJavaScriptには2つの連続した水平バーが含まれています( - )XHTMLページでJavaScriptで処理するためにコメントタグを使用する場合、別の問題が発生します。JavaScriptには2つの連続した水平バー( - )があることです。
<script type = text/javascript>
<! -
var i;
var sum = 0;
for(i = 10; i> 0; -i)
{
sum += i;
}
//->
</script>
コメントの代わりにCDATAを使用しますスクリプトタグ内にCDATAブロックにコンテンツを置くと、コメントの2つの連続したバーの問題をうまく処理できますが、これにより、XMLが理解できないため、いくつかの低いバージョンのブラウザではサポートされません。幸いなことに、JavaScriptのコメンターを使用して互換性を実現することでCDATAブロックをコメントできます。
<script type = text/javascript>
// <![cdata [
var i = 0;
while(++ i <10)
{
// ...
}
//]]>
</script>
推奨されるXHTMLおよびHTML互換性処理方法スタイルとスクリプトをXHTMLページに直接書き込まないでください。優れた選択肢は、XHTMLで導入する前に、外部ファイルを使用してCSSとJavaScriptを作成することです。
この推奨ソリューションは非常によく見えます。いずれにせよ、少なくとも今後数年間で、ページをText/HTMLからApplication/XHTML+XMLに変更します。