ヘッダーのナビゲーション(グローバルナビゲーション)を作成
PC 向けとモバイル向けのレイアウトで表示が大きく変わる
ナビゲーションの HTML はほぼパターン化していて、箇条書きの <ul> <li> と <a> タグを組み合わせて作成する
ナビゲーション全体を <nav> タグで囲む場合が多い
各要素の class 属性などは必要に応じて付ける
<nav>
␣␣<ul>
␣␣␣␣<li> <a htef="リンク先ページの URL"> リンク先ページの名前</a> </li>
␣␣␣␣<li> <a htef="リンク先ページの URL"> リンク先ページの名前</a> </li>
...
␣␣</ul>
</nav>
ナビゲーションを作成するときの CSS には大きく分けて 3つのポイントがある
<ul> からマージン、パディング、リスト先頭のマークを消す
条件によって変化する複雑なレイアウトをうまく制御する
<a> タグに適切なスタイルを適用する
ナビゲーションで使用する <ul> タグには、いくつかのデフォルト CSS が適用されている
ナビゲーションを作るために、デフォルト CSS で設定されている上下マージンと左パディングを 0 にする
各リスト項目先頭のドットを消す
margin: 0;
paddin: 0;
list-style: none;
レスポンシブデザインに対応したナビゲーションは、状態によって表示が複雑に変化する
どんな状態があるか整理する
3通りの表示の状態がある
それぞれの状態に合わせて CSS でレイアウトを作って行く
モバイル向けと PC 向けの表示を切り替えるには、メディアクエリが使える
モバイル向けのボタンをタップしてナビゲーションの表示・非表示を切り替えるには、JavaScript プログラムを使う
表示を切り替えたい要素にクラスを追加したり、削除したりして実現する
表示を切り替えたい要素はナビゲーションの <ul>
<ul> に collapse クラスを追加・削除するようにする
<ul> には、表示・非表示以外にもナビゲーションのデザインを作るためのスタイルを適用する必要がある
callapse クラス以外に、header-nav クラスを付ける
<ul class="header-nav">(表示)◀ ▶ <ul class="header-nav collapse>(非表示)
ナビゲーションの表示状態を 3通り作る
.header-nav {
␣␣モバイル向けナビゲーションのスタイル
␣␣<ul> のデフォルト CSS をリセットするスタイル
}
.heade-nav.collapse {
␣␣ナビゲーションを非表示にするスタイル
}
@media (min-width: 768px) {
␣␣.header-nav {
␣␣PC 向けナビゲーションのスタイル
␣␣}
}
ナビゲーションのリンク <a> に display: block を適用して、ブロックボックスとして表示させる
ナビゲーションのリンクはデザイン上、パディングやボーダーを使用してテキストよりも大きめに作る場合が多い
サイズ調整がしやすいようにブロック卜すとして表示する
ナビゲーションのリンクを作る時には、どんなデザインでもほぼ使うテクニック