ここではHTML5の基礎について書いていきます。
HTML5について
2014年10月28日に正式勧告されました。
2016年にはHTML5.1も勧告予定です。
ここではHTML5(一部5.1)の使い方について書いていきます。
HTML5では廃止になったタグや変更になった箇所があります。
各タグの使用には注意が必要です。
HTML5の各タグには意味があり文脈(コンテキスト)に合わせてタグを選択し使用しなければいけません。
例えば<strong>
タグは「強い強調」という意味があります。
HTML4のように太字にするためだけに使用するのはいけません。
場合によりますが、小見出し
やテーブルキャプション
に使うと良いでしょう。
各タグの意味&使用方法などについてはW3CやMozillaなどをご覧ください。
XHTML/HTML4の違い
HTML5とXHTMLのちがいですが大きく違うのは
- シングルタグに閉じタグをつけない
Docutype宣言
の記述方法meta
・style
・script
タグの使用方法 etc…
などです。
上記に書いたものは特に注意したいものなのでコーディングする時は意識し書くようにしてください。
基本的なマークアップ(HTML5)について
HTML5を使用した基本的なマークアップについて記述します。
HTMLは構造体です。
なので構造を崩すようなマークアップはしてはいけません。
例えば以下のような例です。
大量な<br>
&スペース(
)を使用してレイアウトしている
1 | <br><br><br><br><br> |
これはなぜいけないかというと、
タグの意味として使用方法が間違っていて構造体ではないからです。<br>
は文章の改行、
は半角ではなくて「Non-breaking Space」なので自動的な改行を防ぐ物です。
このような意味を理解してマークアップをしないと構造体が崩れてしまいメンテナンスができないカオスなサイトになってしまいます。
そのためレイアウト目的では絶対に使用しないでください。
他にもHTML5のタグには意味がありHTMLは構造体なので
レイアウト目的で使用してはいけないタグがいくつかあります。
- article
- section
- heder
- nav
- footer
- aside etc…
上記のタグは全て意味があり使用条件があるのでdiv
のようにレイアウト目的で使用はできません。
構造を考えて使用しなければいけません。
- 詳しくは構造設計のページで書いています。
構造体を意識してHTML5のコーディングをすることでイケてるマークアップに自然となっていくでしょう。
HTML5基礎構造
基本的な構造&パーツの記述例を書いていきます。
html
1 | <!DOCTYPE html> |
Head
1 | <head> |
script
タグはbody
閉じタグの直前に記述する。- そのほか
ogp
等はtitle
たぐのあとに記述する。 - ピンチをしない場合は
viewport
のcontent
にuser-scalable=no
を追記する。
Favicon
1 | <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> |
- サイズなどは常に変わるので記述には注意が必要。
Header
1 | <header class="l-header" role="banner"> |
Nnavigation
1 | <nav class="l-globalNav" role="navigation"> |
- 入れ子のメニューになる時は
dl
を使用する。
Main Contents
1 | <main class="l-main" role="main"> |
section
やarticle
を使用する時はレイアウト目的(div
と同じように)使用してはいけない。section
&article
を入れ子の構造にする時は見出しをつけること。
section
>section
のようになると構造的にも文脈(コンテキスト)としてもおかしいので必ず、見出しをつけて区別すること。- 同じレベルの要素が連続している時は入れ子にしてはいけない。
Sidebar
1 | <div class="l-sidebar"> |
- サイドバーは要素が何が入るかわからないため
aside
は使用しない。
Footer
1 | <footer class="l-footer" role="contetinfo"> |