2019.08.29

#webサイト

【コピペで簡単】JSを使用しないドロワーメニューの実装方法

こんにちは。
8月も残すところわずかとなりました。

今年の夏はBBQや海にも遊びに行きましたが、何か夏らしい事をやり残してはいないかと
そわそわしている小林です。

さて、今回はWebサイトでよく見かける、ドロワーメニューの実装方法について
書いて見ようと思います。

 

 

ドロワーメニューとは


そもそも「ドロワー」とは、引き出しといった意味の名詞になります。

普段は格納されていますが、画面外から引き出して表示させるナビゲーションメニューがそれに当たります。

 

パソコンのブラウザではそこまで利便性を感じられませんが、表示領域の少ないスマホやタブレットでは

とても有効的な手段ではないでしょうか。

 

 

CSSのみでドロワーメニューを実装する方法


クリックやタップでドロワーメニューを展開させる場合、jQueryを使用してプログラムを組むのが一般的だと

思いますが、今回はCSSのみでドロワーメニューを開閉させてみたいと思います。

 

まずはデモをご覧ください。

・CSSのみで実装したドロワーメニュー

 

デモ右上の3本線をクリックすることでドロワーメニューを開閉させる事ができます。

 

 

メニューが開閉する仕組み(HTML)


ページ全体のHTMLの構造は下記の通りです。

 

 

<input>タグ一つに対して、<label>タグを2つ用意してあります。

ひとつは開くと閉じるの両方で、もうひとつを閉じる用としています。

これだけ言われるとわかりにくいかもしれませんが、要は常に見えているボタンと

閉じる用の<label for=”navTgl” class=”close”></label>を配置しておき、

コンテンツエリアには見えないcheckboxをそれらのスイッチの役割として置いています。

 

チェックボックスがチェックされる事で、スタイルが入り切りされる仕組みです。

 

 

CSSの記述


コンテンツ部分のCSSは割愛しています。

 

 

チェックボックス自体はdisplay: none;で非表示にしていますが、2つのlabel要素と

紐づいている為、しっかり仕事をしてくれています。

 

最後に


:checked擬似クラスはIE9以上で使用できるみたいですが、古いブラウザを考慮しなければいけない場合は

使用を控えた方が良いかもしれません。

 

しかし、表示領域の少ないスマホでは確実に便利な手段ではないでしょうか。

 

 

この記事を書いた人

小林サトシ

小林サトシ

back to list

CONTACT HERE!

サービスのご依頼やお問い合わせはこちらから