HTML5 では DOCTYPE 宣言は html としか書かない。
HTML5 からは DTD を指定するという意味合いから、単に「レンダリングモードがHTMLですよ」というだけの意味に変わった。
省略可能なタグ
- html/head/body/tbody/colgroup はタグ自体を省略可能
- tbody : テーブルの本体
- colgroup : thead の前にでも置く、テーブルの縦列単位でグループ化、まとめて設定するためのタグ。
- li/dt/dd/p/tr/td/th/rt/rp/optgroup/option/thread/tfoot は終了タグを省略可能
- br/img/hr/meta/input/embet/area/base/col/keygen/link/param/source は開始タグだけで意味がある
すべてのタグで利用可能な属性(グローバル属性)
- accessKey : キーボードショートカットキー
- class : スタイルシートクラスの指定
- contenteditable : 編集可能指定
- contextmenu : menu 要素の id を指定してコンテクストメニューを表示
- dir : テキストの方向を指定
- draggable : ドラッグ可能指定
- hidden : 関係・無関係の指定
- id : ユニークID
- lang : この要素で使用する言語を指定、普通は html につける
- spellcheck : スペルチェックの設定
- style : スタイルシートを直書き
- tabindex : タブインデックス
- title : タイトル指定
- data : 独自データを指定
タグの種類、意味(調べた順)
HTML タグは基本的にグローバル属性のみ。
規約上は、必ず head 要素、head > title 要素を入れる必要がある。
mata タグは head 上に配置する情報タグ。head の先頭に置く必要がある。charset は必須ではないが推奨の設定。
属性はグローバル以外に name, http-equiv, content, charset がある。
meta の name には有名どころで keyword, description がある。どっちも有名。keyword スパムやめてくれマジで。
http-equiv はプラグマ指定子を指定するそうだ。ブラウザに文書の状態、挙動を指示するもの。Content−Type, refresh などが指定される。
style タグは、文書内のスタイルを指定する。一応どこに置いても合法だが、head に置くのが行儀いい。
media 属性で、対象を指定できる。
- all : 全部に適用
- screen : ディスプレイに適用
- speech : 読み上げブラウザに適用
- braille : 点字ディスプレイとか
- embossed : 点字プリンタ
- handheld : 携帯機器
- print : 印刷用
- projection : プロジェクタ用
- tty : 文字が固定された機器、コンソールブラウザとか
- tv : テレビ用
script タグはHTML5 で仕様が変更になってる。
head でも body でも書き出して操作できるそうな。src の意味は変わらず、async が追加(利用可能な時に読み込んで実行)されてる。
defer 属性で、読み込み完了時に実行、type のデフォルトが text/javascript になった。charset でエンコーディング指定。
noscript タグはスクリプトが実行されない環境で代わりに表示するもの。「JavaScript 許可せーや!」メッセージ置く用かね?