ページ内のスクロールバーを見やすく且つ異なるブラウザ間でも同じデザインにする「SimpleBar」ライブラリの利用方法
CSSのoverflowでスクロールバーを設置した際、ブラウザによってデザイン(見た目)が異なる。また(個人的には)、ChromeやEdgeはスクロールバーが見つけやすいが、Firefoxは見つけにくかったりする。これを何とかならないか調べたところ「SimpleBar」ライブラリが良さそう。以下に実装方法をメモ。
サンプル
https://taitan916.info/sample/SimpleBar/
SimpleBar
公式サイト
https://grsmto.github.io/simplebar/
CDN
CDNで使う場合は以下を記述する。
<script src="https://cdn.jsdelivr.net/npm/simplebar@6.2.7/dist/simplebar.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/simplebar@6.2.7/dist/simplebar.min.css" rel="stylesheet">
利用方法
ソースコード
<style> .title{ font-weight: bold; } .contents{ width: 200px; overflow: auto; white-space: nowrap; height: 200px; border: 1px solid #ccc; margin-bottom: 20px; } </style> <div class="title">通常のスクロールバー</div> <div class="contents"> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> </div> <div class="title">SimpleBar</div> <div class="contents" data-simplebar> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> コンテンツ/コンテンツ/コンテンツ/コンテンツ/コンテンツ<br> </div> <script src="https://cdn.jsdelivr.net/npm/simplebar@6.2.7/dist/simplebar.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/simplebar@6.2.7/dist/simplebar.min.css" rel="stylesheet">
適用させたい要素に対して「data-simplebar」を付与すること。
JavaScriptやjQueryで個別に適用させたい場合はドキュメントを参照すること。
関連記事
-
JavaScriptでlocalStorageを簡単に操作できる「store.js」ライブラリの利用方法
以前Dexie.jsを利用してIndexedDBを取り扱う方法をメモしたが、今回 ...
-
JavaScriptでtableタグをエクセルファイル(xlsx)としてダウンロードさせる方法
table内のデータを何らかのファイルでダウンロードさせたい。通常PHPでCSV ...
-
JavaScriptのマップ用ライブラリ「MapLibre GL JS」の利用方法
あるサイトをWappalyzerで調査していた際に「MapLibre GL JS ...
-
バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法
サイト内に日時ピッカーを実装する場合、jQueryの「DateTimePicke ...
-
JavaScriptでフォームのバリデート時に便利な「validator.js」ライブラリの利用方法
JavaScriptでフォームのバリデートを行う際、「半角英数字 正規表現」等で ...