CSS

2021.06.07

【CSS】スマホのパンくずをCSSだけで改行させずに横スクロールさせる方法

ユーザーが今どのページを見ているのかわかりやすくするためにパンくずリストを設置しているサイトが多いですが、階層が多くなるとどうしても長くなってしまいます。

そこで、今回はCSSだけで簡単にスマホのパンくずを改行させずに横スクロールで表示する方法をご紹介します。

やることは…親要素にoverflowをかけるだけ

パンくずリストの親要素に対して、横方向にoverflow-xscrollautoを指定します。
また、テキストが改行されないようにword-break: keep-allwhite-space: nowrap;もかけます。

下記ではレスポンシブを意識して横幅768pxからスクロールの指定をかけました。codepenの幅が狭いのでスクロールされているかと思います。

See the Pen yLMzNeE by spiqa design (@spiqa_design) on CodePen.

スクロールバーを非表示にする方法

パンくずリストはスクロールで設置したいけれど、デザイン上そのままスクロールバーが出てしまうのはいまいち…という時には::-webkit-scrollbarを書くことでスクロールバーをカスタマイズすることができます。
次の例では、先ほどの例に下記内容を追記して非表示にしてみました。

  • スクロールバーをカスタマイズするためにパンくずの親要素に対して::-webkit-scrollbarを指定
  • 今回は非表示にしたいため、display:noneを指定

See the Pen ZEeXGOq by spiqa design (@spiqa_design) on CodePen.

スマホでスクロールする時、気をつけたいこと

以前までのiOSではスクロールがカクカクしてしまっていたため、スクロールを滑らかにするために-webkit-overflow-scrolling: touch;を入れていました。
しかし、このプロパティをつけてしまうと要素の範囲外に表示ができなくなってしまうなど、多くのバグが報告されています。
Androidは元々スクロールに問題はなく、最近のiOSでもデフォルトで滑らかにスクロールできるように変更されたため、このスタイルは不要になりました。
バグが起こってしまうのを防ぐためにも、これからは-webkit-overflow-scrollingを書かないことをおすすめします!

参考サイト:https://developer.apple.com/documentation/safari-release-notes/safari-13-release-notes

まとめ

特にブログやコラムなどは記事のタイトルが長くなることが予想されるので、そういったコンテンツを含むサイトには横スクロールを効かせたほうがいいです。ぜひご活用ください!

overflowについての関連記事はこちら

この記事をシェアする

関連記事

  • 2023.12.29

    記事タイトルを行数で制御するCSS

    CSS

    コーディング

  • 2023.12.28

    色違いは必要ない!アイコンはcssで色を変えよう!

    CSS

    コーディング

  • 2023.11.14

    コーダー同士の情報のやり取りで効率がアップした話

    CSS

    コーディング

おすすめ記事

  • 2021.09.29

    【簡単】プロのようなデザインが作れるツールCanva(キャンバ)のおすすめポイント

    デザイン

  • 2022.05.31

    超簡単!GoogleMapの色をサイトにあわせて変える方法

    コーディング

    制作

  • 2022.04.22

    【動画編集ソフト】アフターエフェクトとプレミアプロってなにが違うの?違いと使い分けを解説!

    制作

    動画

×