Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

navタグ・要素とは?(意味)

navタグ・要素とは、ナビゲーションのセクションを表すタグ・要素のことです。

navタグを指定することで、ページ内の指定の部分や他のページへのリンクを設定できます。

ポテパンスタイルでいうと、スマホ表示した際の画像の部分がnav要素になります。

navタグ・要素とは?(意味)

nav要素の設定は必要?

nav要素は、利用者がページ内の主要コンテンツを閲覧する際に、コンテンツをいちいち探す手間を省いてくれるといった利点があります。

また、視覚が不自由な方向けに使用される「スクリーンリーダー」が、nav要素からサイトメニューを見つけてページ移動を助ける役割を果たします。

これらの理由から、nav要素は設定しておいて損はありません。

HTML5以前は、divタグのIDやクラスに「nav」「menu」といった名前をつけて区別していました。

HTML5になると、ナビゲーション専用のタグ「navタグ(nav)」が用意されたため、現在ではnavタグが使用されます。

■HTML5以前

<div id="nav">
    <ul class="menu">
        <li>~</li>
        <li>~</li>
        <li>~</li>
    </ul>
</div>

navの使い方・書き方(ul・li)

navタグの使い方・書き方は、ナビゲーションにしたい範囲をタグで囲みます。

<nav></nav>

navタグはサイトやWebページのメインのナビゲーションのみを囲み、すべての要素は囲みません。

そのため、利用規約やトップページへのリンクといったナビゲーションには、navタグは使わなくてOKです。

サンプルコードで確認してみましょう。

<nav>
<h2>ナビゲーションのタイトルです。</h2>
<ul>
  <li><a href=”#”>TOP</a></li>
  <li><a href=”#”>ABOUT</a></li>
  <li> <a href=”#”>CONTACT</a></li>
</ul>
</nav>

■表示結果

navの使い方・書き方(ul・li)

見た目にはわかりませんが、タイトルも含めた範囲がnav要素になっています。

navをcssでアレンジ【サンプル】

ナビゲーションを使用するのであれば「横並びにしたい」「オシャレな感じにしたい」と思うこともあるでしょう。

ここでは、コピペでナビゲーションが使えるようサンプルを5個紹介します。

  1. シンプルな横並び
  2. 斜線区切り
  3. hover時に下線表示
  4. hover時に背景色を変更
  5. 背景色を変更+hover時に薄くなる

HTMLは次のコードを使用します。

<nav>
<ul>
  <li><a href=”#”>TOP</a></li>
  <li><a href=”#”>ABOUT</a></li>
  <li><a href=”#”>MENU1</a></li>
  <li><a href=”#”>MENU2</a></li>
  <li> <a href=”#”>CONTACT</a></li>
</ul>
</nav>

1.シンプルな横並び

■表示

シンプルな横並び

画像のようなシンプルに横並びのメニューを作るには、次のCSSを指定しましょう。

■CSS

nav {
    text-align: center;
}

nav ul {
    margin: 0 ;
    padding: 0 ;
}

nav ul li{
    list-style: none;
    display: inline-block;
    width: 10%; /* ここで項目の幅を指定します */
}

nav ul li a {
    text-decoration: none;
    color: #333;
}

2.斜線区切り

■表示

2.斜線区切り

項目ごとに斜線で区切り線を入れたメニューです。

ここでは、li要素に擬似要素(::after)で区切り線を入れる方法で作成しています。

区切り線をスラッシュではなく「|」にしてもよいですね。

■CSS

nav {
    text-align: center;
}

nav ul {
    margin: 0 ;
    padding: 0 ;
}

nav ul li{
    list-style: none;
    display: inline-block;
    width: 10%; /* ここで項目の幅を指定します */
}

nav ul li::after{
    content: "/";
    padding-left: 50px; /* li要素のwidthと調整が必要 */
    color: #888;

}

nav ul li:last-child::after {
    content: ""; /* 最後のli要素の「/」をなくします */
}

nav ul li a {
    text-decoration: none;
    color: #333;
}

3.hover時に下線表示

■表示

3.hover時に下線表示

マウスでメニューの項目を選ぶ際に、下線が表示されるメニューです。

■CSS

nav {
    text-align: center;
}

nav ul {
    margin: 0 ;
    padding: 0 ;
}

nav ul li{
    list-style: none;
    display: inline-block;
    width: 10%; /* ここで項目の幅を指定します */
}

nav ul li a {
    text-decoration: none;
    color: #333;
}

nav li:hover{
    border-bottom: 2px solid #FF7A37; /* 下線の太さや色を指定します */
}

4.hover時に背景色を変更

■表示

4.hover時に背景色を変更

下線表示と似たアレンジで背景色を変更してみました。

■CSS

nav {
    text-align: center;
}

nav ul {
    margin: 0 ;
    padding: 0 ;
}

nav ul li{
    list-style: none;
    display: inline-block;
    width: 10%; /* ここで項目の幅を指定します */
}

nav ul li a {
    text-decoration: none;
    color: #333;
}

nav li:hover{
    background-color: #FFAF87; /* 背景色を指定します */
}

5.背景色を変更+hover時に薄くなる

■表示

5.背景色を変更+hover時に薄くなる

メニューに背景色をつけて、項目選択中に少し薄くなるようなデザインです。

■CSS

nav {
    text-align: center;
}

nav ul {
    margin: 0 ;
    padding: 0 ;
    font-size: 0;
}

nav ul li{
    list-style: none;
    display: inline-block;
    width: 10%; /* ここで項目の幅を指定します */
    background-color: #333; /* 背景色を指定します */
    font-size: 16px;
}

nav ul li a {
    text-decoration: none;
    color: #fff; /* 文字色を指定します */
}

nav li:hover{
    opacity: 0.8; /* hover時の不透明度を調整します */
}

navタグは2つ使ってもよい?

navタグは2つなど複数使ってもよいのでしょうか?

ナビゲーション要素に使うのであれば、何個使っても問題はありません。

navを使う数に制限はありませんが、ユーザからすると1ページに何個もナビゲーションがあるのは逆に使いづらくなってしまいます。

必要な分だけ設定することをオススメします。

まとめ

HTMLのnavタグ・要素について解説しました。

サイトが大きくなるほど、主要ページへの遷移を促すナビゲーションは重要な役割を果たします。

アレンジ方法も含め、ぜひこの記事でnavタグを使いこなせるようになってください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。