WEB修業中☆

XHTML1.0とは

金子はXHTML1.0を基本に日々お勉強中です。
でも、実はXHTML1.0よくわかってないです。
いまさらかもですが、XHTML1.0についてです。

--

XHTML1.0とは、HTML4.01で使用できる要素や属性をそのまま使用して、XMLの規則に従って定義しなおしたもの。

XMLとは、SGMLの不必要な機能を取り除き、web上で必要な機能を追加したもの。

基本的にXHTML1.0とHTML4.01は同じ。

----

XHTML1.0を使って組む時に、最初に記述するのは
・XML宣言
・DOCTYE宣言
・ネームスペース
この3つ

具体的にはこんな感じ↓↓↓

(TransitionalDTDの場合)
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/html1/DTD/xhtml1-transional.dtd">
<?html xmlns="http:www.w3.org/1999/xhtml" xml:lang="ja" lang:"ja">

----

解説

・XHTML宣言
<?xml version="1.0" encoding="Shift_JIS"?>
これは文字コードが
UTF-8、UTF-16の時は記入しなくてもOK、
JISの時は記入必須らしいです。

書いた方がより正しい構文にはなるんだろうけど...
でも、このXHTML宣言のせいでIE6のバグにひっかかるんだよなぁ;;
UTF-8、UTF-16コードならXHTML宣言とってもOKならその方が楽かも。


・DOCTYE宣言
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/html1/DTD/xhtml1-transional.dtd">
DTDとDOCTYE宣言で、詳しくかいたので省略。


・ネームスペース
<?html xmlns="http:www.w3.org/1999/xhtml" xml:lang="ja" lang:"ja">

・html xmlns="http:www.w3.org/1999/xhtml
このURLは固定らしいです。
・xml:lang="ja"
XMLの予約属性
・lang:"ja"
既存のHTMLの互換性を保つ

---

なんでXHTML宣言が無いサイトがあるんだろー?とか
サイトのソースを見た時に思ってんですが、
UTF-8で書いたらXHTML宣言が無くてもOKだからなんですね。

でもxml:lang="ja"とlang:"ja"はどっちも書いた方がいいと思うんだけどな...
むーん

-----------
参考文献
・詳解HTML&XHTML&CSS辞典 著者:大藤幹 2002年4月5日発行

など
----------

  • 02.07.2009
  • 投稿者名mayumi
  • コメント(2)

コメント

<?xml version="1.0" encoding="Shift_JIS"?>
>書いた方がより正しい構文にはなるんだろうけど...
>でも、このXHTML宣言のせいでIE6のバグにひっかかるんだよなぁ;;

書いてください( `;ω;)ブボボ
IE6なんかのために
正しい構文を曲げるほうがイクナイと思います。
これ1行あるかないかでcssにかなり影響します。

03.07.2009 投稿者名 藤原

安易にXHTML宣言を取ればいいなんて、思ってしまった自分が恥ずかしいです///
正しい構文をHTMLで書くことが大前提ですもんね。
CSSのために構文を曲げちゃいけないですね。

07.07.2009 投稿者名 金子

コメントする

(必須)上のスペースに表示されている文字列を下のフィールドに入力してください。

▲ top