デザイン

デザイン

【レスポンシブ・メニューの作り方】CSSで横幅いっぱいのレスポンシブ・タイルメニューをつくる手順を4段階で確認!

7,627 views

読了時間 : 約1分52秒

横幅いっぱいのタイルメニューを使うことで、サイトを隅々まで網羅した効果的なナビゲーションが可能になります。

この記事ではそれをレスポンシブにしたり、小さなスクリーンにも対応できるようJavaScriptでナビゲーションを隠せるようにしたりする方法をご紹介します。

tile-navigation-featured

ソースをダウンロード

デモを見る

 

 

1.メニューの構築

 

レスポンシブなタイルメニューと言っても、特別斬新なことをするわけではありません。順不同のリストに含まれるリンクがnavタグの中でラップアップされています。小さな画面でナビゲーションを出したり隠したりしてスペースを節約できるよう、トグルボタンもつけてみました。

この記事ではモバイルを優先したアプローチをしていくので、ナビゲーションは隠れるようにします。.openクラスが追加された時に表示されるようにして、リストエレメントはブロックエレメントとして表示します。

リンクエレメントでホバーしたときに右に寄るようにしたいので、transformプロパティをaエレメントの:hoverに追加します。横のスクロールバーが出てくるなどでレイアウトが崩れると困るので、liのoverflowプロパティを隠れるように設定します。liとa得れmtンをには同じセットのbackgroundプロパティを与えます。

 

 

2.メディアクエリー

 

デザインにメディアクエリーを付け加えていきます。最初のブレイクポイントの480pxで自動的にナビゲーションを表示し、タイルはオリジナル幅の50%になるようにして左側に寄るようにします。

次のブレイクポイントの768pxでタイルはオリジナル幅の25%になり、1行4つずつの2行で表示されます。テキストは中央寄り、ホバーした時に左ではなく上に移るようにします。

最後のブレイクポイントの1024pxではタイルを1行で表示し、一つのタイルがオリジナル幅の12.5%になるようにします。Liエレメントのoverflowプロパティをリセットして、ホバーの際にリンクが下に寄るようにします。

 

 

3.ナビゲーションのトグルボタン

 

タイルと合うようにシンプルなスタイリングにします。最初のメディアクエリーのブレイクポイントでは自動的にナビゲーションが表示されるようにしてあるので、この時はボタンを隠しておきましょう。

 

 

4.基本的なJavaScript

 

ナビゲーショントグルがうまく機能するよう、簡単なJavaScriptを使ってclassie.jsでクラスを簡単に追加したり取り除いたりできるようにしました。

 

 

最後に

 

CSSのテクニックを上手に使えば、こんなレイアウトも簡単に作成できます。CSS3を使うとさらにアクションを加えることも可能です。他にもタイルにアイコンやボーダーを加えたり、アニメーションで遊び心を加えてみたり、色々挑戦してみてください。

 

 

※本記事は、Creating a Full Width Responsive Tiled Menu with CSSを翻訳・再構成したものです。

【コンビニでも使える!メルペイ初回利用1000円分招待コード】
当サイト限定招待コード:CMUTDF

 
利用可能店舗:メルカリ、コンビニ、ドラッグストア等

金額:※さらにメルペイスマート払で2000円分ポイント!
友達招待でお互いに1000円分ポイント!2人以上招待でUSJ貸し切りイベントに抽選招待も!

メルカリ-フリマアプリ&スマホ決済メルペイ

メルカリ-フリマアプリ&スマホ決済メルペイ

無料

 

 

【Uber初回利用2000円オフクーポン】
【Uber初回利用2000円オフクーポン】
130v4g

プロモーション コードを追加するで「130v4g」を入れてください。
※プロモコードは日本国内でのみ利用可能
 
»当サイト限定の初回利用2000円オフのクーポンを使って登録はこちら!

Uber

Uber

 

【UberEats初回1000円オフクーポン】
【UberEats初回1000円オフクーポン】
ins6je2v

対象店舗:マック、ガスト、スタバ、ピザハット、松屋 等
※1000円分無料で頼めます。〇〇円以上とかもナシ!完全無料でお試しOK
割引額:1000円引き
 
»当サイト限定の初回利用1000円オフのクーポンを使って登録はこちら!

Uber Eats のお料理配達

Uber Eats のお料理配達

おすすめ新着記事

おすすめタグ