HTMLの現行推奨規格であるXHTML 1.0について解説します。
XHTML 1.0は、西暦2000年 1月26日にHTML 4.01をXMLの元で再定義したXHTMLとして勧告されました。
現在、XHTML 1.0の後継規格となるXHTML 1.1なども策定されましたが、W3Cでは今以ってXHTML 1.0を現行推奨規格としております。
XHTML 1.0ではHTML 4.01の特徴をそのまま引き継いでおります。
すなわち、
等と言った改善が行われております。
また、マークアップにおいても、表示方法に関しては一部を除いてスタイルシートにて行うようにし、HTMLでは文書構造に則った記述を行う事が求められるようになりました。
但し、HTML 4.01をそのままXML化した事もあり、HTML 4.01同様正式版(ストリクト文書型)の他に、緩い仕様(トランジッショナル文書型)やフレームセット文書型も残されております。
トランジッショナル文書型は破棄されるべきと言う意見もありますが、CSSに対応していない旧式の環境でもどうしても表示をある程度整えたいと言う人向けに現在も残されております(規格を策定・勧告する事は出来ても、それを強制・強要する事は出来ないのでしょう)。
加えて、XMLの元で再定義されたため、XML独自の属性が加わっておりますが、本質的にはそれ程の変化はありません。
XHTMLはXMLの応用言語のため、XMLとして扱う必要があります。
すなわち、MIMEタイプを「application/xhtml+xml」とする必要があります。
application/xml」「text/xml」も間違いではありませんが、これらはXHTMLではなく一般のXMLとなるため、ハイパーリンクなどが機能しなくなる場合があります。しかしながら、XHTML 1.0は在来HTMLの代わりに利用する事が許されており、その場合のMIMEタイプは在来HTML同様、「text/html」とします。
XHTMLでは、文書型宣言の前にXML宣言を書く事が強く求められておりますが、ここでは文書型宣言のみを解説します。
XHTML 1.0の正式版(XHTML 1.0 ストリクト)の文書型宣言は以下のようになります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
在来HTMLと違って、システム識別子(URI部分)が省略出来ない事に注意して下さい。
XHTML 1.0 トランジッショナルの文書型宣言は以下のようになります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
在来HTMLと違って、システム識別子(URI部分)が省略出来ない事に注意して下さい。
XHTML 1.0 フレームセットの文書型宣言は以下のようになります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
在来HTMLと違って、システム識別子(URI部分)が省略出来ない事に注意して下さい。