基礎 2

XHTML辞典 > 基礎 2

スポンサード リンク

XML宣言

XHTML文書では、XML宣言を文書の先頭に配置し、XMLのバージョンと使用する文字コードを宣言することが推奨されています。
XMLでは大文字と小文字は別の文字として扱われますが、文字コードについては大文字でも小文字でもかまいません。

シフト JIS

<?xml version="1.0" encoding="Shift_JIS"?>

JIS

<?xml version="1.0" encoding="iso-2022-jp"?>

EUC

<?xml version="1.0" encoding="EUC-JP"?>

XML宣言は、XHTML文書の文字コードがUTF-8またはUTF-16以外で、かつWWWサーバがcharsetパラメタで文字コードを送信しない場合に必須となります。
XML宣言を配置しると、Internet Explorer 6.0では常に互換モード(※)で表示されたり、Macintosh版のInternet Explorer 4.5以前ではソースコードがそのまま表示されたり、ファイルがダウンロードされるようになる問題が発生します。

※ 比較的新しいブラウザには互換モードと標準モードというふたつの表示モードが用意されています。
互換モードでは古いブラウザの表示方法と互換性のある表示を行い、文法的なミスもある程度カバーして表示します。
それに対し標準モードでは、W3Cの仕様に沿った表示を行い、文法的なミスがあればその部分は無視されます。
これらの表示モードは、ソースコードのDOCTYPE宣言部分がどのように書かれているかによって、ブラウザが自動的に切り替えられるしくみになっています。

DOCTYPE宣言

XHTML1.0

XHTML1.0には、3種類のDTD(※)が用意されています。
使用するDTDに合わせて、XML宣言の後に次のいずれかのDOCTYPE宣言を入れます。

※ DTD(文書型定義) : その文書中でどのようなタグや属性が使われているかを定義したもの。

Strict DTD

W3Cが推薦しているもので、簡素な要素と属性のみが許されています。テキストの書式設定や視覚的効果に関連する多くの要素と属性が欠けていますのでカスケーディング・スタイルシートCSSで補います。

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

Transitional DTD

strictでは使えない各種の要素と属性の使用が可能です。

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

Frameset DTD

おおむねtransitionalと同じですがフレームを使う文書用です。

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

XHTML1.1

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11.dtd">

XML名前空間宣言と属性

利用しているタグセットがXHTMLのものであることを示すために、ルート要素(html要素)でXHTMLのXML名前空間を宣言しておきます。
また、言語を示す属性を指定しておきます。XMLでは xml:lang を使用します。
XHTML1.0では、既存のHTMLとの互換性を保つため、lang属性も指定しておくことができます。

XHTML1.0

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

XHTML1.1

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

要素名と属性名は必ず小文字で書く

XMLでは大文字と小文字は区別されます。XHTMLのDTDでは、要素名と属性名はすべて小文字で定義されていますので、XHTML文書を書く場合は必ず小文字で書く必要があります。

タグは省略できない

HTMLでは、終了タグを省略したり、tbody要素のように開始タグ・終了タグ共省略したりできましたが、XHTMLでは省略できません。

空要素の書き方

br要素などの空要素の書き方には2種類あります。

  1. <br></br>
  2. <br />

属性値には引用符で囲う

属性値は必ず引用符で囲います。

width="100"

属性値は最小化できない

属性値は必ず 『 属性名="属性値" 』 の形式で指定します。

<input type="radio" checked="checked" />

属性値に含まれる空白文字の取り扱い

属性値の最初と最後にある空白文字は取り除かれ、中に含まれる連続した空白文字は、ひとつの半角スペースに置き換えられます。

script要素とstyle要素の取り扱い

XMLの 「CDATAセクション」という形式にする必要があります。

script

<script type="text/javascript">
<![CDATA[
・・・スクリプト
]]>
</script>

css

<style type="text/css">
<![CDATA[
・・・スクリプト
]]>
</script>

識別子にはname属性ではなくid属性を使う

その要素の固有の名前をあらわす識別子を指定するには「id属性」を使用する必要があります。
なお、識別子として使用されない「name属性」に関しては、「id属性」を使う必要はありません。

name属性が定義されている要素

下記の要素はname要素が使用できます。

<a id="aaa">

スポンサード リンク
←基礎1 ▲TOP 既存のブラウザで表示させるための注意事項→

XHTML辞典