スマートフォンなどで使用される横にスクロールさせるナビゲーションメニューをCSSだけで実装する方法を紹介します。
横スクロールナビゲーションの作り方
ナビゲーションメニューを横にスクロールさせるためにはCSSに以下のような設定を記述することで実現できます。
ul {
white-space: nowrap;
overflow-x: auto;
}
ポイントとしては、「white-space: nowrap;」を使って途中で折り返しをさせないことと、「overflow-x: auto;」で横にスクロールできるようにすることです。
あとは、アイテムを横に並ぶように指定をするだけです。
li {
display: table-cell;
}
例では、「table-cell」を使って横に並べていますが、他にも「inline-block」などを使っても良いでしょう。
滑らかにスクロールさせたい(iOS用)
iOS向けにスムーズにスクロール(慣性スクロール)させたい場合には、親要素に「-webkit-overflow-scrolling:touch;」を追加します。
ul {
white-space: nowrap;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
以上が、スマホで使用されるナビゲーションメニューをCSSだけで横にスクロールさせる方法となります。

URLや英数字の長文を途中で改行させる方法
【超簡単】flexを使って均等に横並びメニューを作る
【WordPress】カスタムメニューの作り方
WordPressでjQueryを読み込む場合について
HTML5で新たに定義された要素
【jQuery】フェードで画像を切り替える