CSSスクロールバースタイル設定の実装

CSSスクロールバースタイル設定の実装

Webkit スクロールバー スタイルのリセット

1. スクロールバーには、スクロールバー ボタンとトラックが含まれています。トラックはさらにトラックピースとサムに分割されます。トレースピースは親指の上部と下部です。
2. スクロールバーの角は水平角と垂直角の交点です
3. resizeは、スクロールバーの交差点にある要素をドラッグしてサイズ変更するための小さなコントロールを設定するために使用されます。

構成構造図は以下のとおりです。

スクロール バーのカスタム スタイルが見つかると、ブラウザーのデフォルトのスタイル設定は無効になり、CSS で定義されたスタイルのみが使用されます。つまり、スクロールバー ボタンまたはスクロールバー トラックに対してのみ値を設定することはできません。

-webkit-scrollbar /* スクロールバー全体。リセット時に設定する必要があります*/
-webkit-scrollbar-button /* スクロールバートラックの両端にあるボタン*/
-webkit-scrollbar-track /* スクロールバー トラック (サムとトレースピースを含む) */
-webkit-scrollbar-track-piece /* トラックの中央部分と下部部分の上部と下部 (左と右) の部分 */
-webkit-scrollbar-thumb /*スクロールバー内の小さな四角*/
-webkit-scrollbar-corner /* 垂直と水平の交差角度 */
-webkit-resize // スクロールバーの交差点にある、要素をドラッグしてサイズ変更するための小さなコントロール*/

以下の疑似クラスと組み合わせて設定できます (スクロール バーはオペレーティング システムのブラウザーによって異なる場合があるため、以下の疑似クラスに従って設定できます)。

  • :水平 水平トラック、トラックピース、サム
  • :vertica 垂直トラック、トラックピース、サム
  • :上と左のボタンの場合は減算ボタン、上または左の場合はトラックピース
  • :下と右のボタン用の増分ボタン、下と右のトラックピース
  • :start ボタンとトラックピースに適用され、オブジェクト(ボタンまたはトレースピース)がスライダーの前に配置されているかどうかを示します。
  • :end ボタンとトラックピースに適用されます。オブジェクト(ボタンまたはトレースピース)がスライダーの後ろに配置されているかどうかに関係なく適用されます。
  • :double-buttonはボタンとトラックピースに適用されます。トラックの終わりがボタンのペアであるかどうか
  • :single-buttonはボタンとトラックピースに適用されます。トラックの終わりがボタンであるかどうか
  • :no-button はトラックピースに適用されます。トラックの最後にボタンはありません。
  • :corner-present は、スクロールバーの角が存在するかどうかに関係なく、すべてのスクロールバーに適用されます。
  • :window-inactive は、フォーカスがウィンドウ上にない場合、スクロールバー領域を含むすべてのスクロールバーに適用されます。
  • :enabled、:disabled、:hover、:active疑似クラスも適用される

IEでは、スクロールバーの色のみを変更できます。

scrollbar-arrow-color:#f2f2f3; /*上下矢印*/
scrollbar-track-color /*下部の背景色*/
scrollbar-face-color /*スクロールバーの前景色、つまみに対応*/
scrollbar-shadow-color /*スクロールバーの端の色、サムネイルの境界線*/
scrollbar-highlight-color /*スクロールバーの全体的な色*/
scrollbar-base-color /* スクロールバーの基本色*/

参考文献

スクロールバーのスタイル設定 | Webkit

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  Reactのコンテキストとプロパティの説明

>>:  HTML タイトルに二重引用符を追加する方法

推薦する

Vue 値転送の 12 の方法の概要

目次1. 父から息子へ2. 息子から父へ3. ブラザーコンポーネント通信(バス) 4. ref/re...

Vue で配列をクリアするいくつかの方法 (要約)

目次1. はじめに2. データを消去するいくつかの方法2.1 ref() の使用2.2 スライスの使...

Linux で Bash 環境変数を設定する方法

Shell は C 言語で書かれたプログラムであり、ユーザーが Linux を使用するための橋渡しと...

VUE 応答性原理の詳細な説明

目次1. 応答原理の基盤2. コアオブジェクト: Dep と Watcher 3. 依存関係を収集し...

Tomcat を使用して Centos 環境に SpringBoot WAR パッケージをデプロイする

戦争パッケージを準備する1. 既存のSpringBootプロジェクトを準備し、pomに依存関係を追加...

CentOS7でMySQL 5.7をアンインストールする方法

MySQLに何がインストールされているか確認する rpm -qa | grep -i mysql n...

JavaScript クリップボードの使用法の詳細な説明

(1)はじめに: clipboard.js は、テキストをクリップボードにコピーする機能を実装する軽...

uni-app を使用して上部のナビゲーション バーにボタンと検索ボックスを表示する方法

最近、会社でアプリを開発する準備をしており、最終的に開発には uni-app フレームワークを使用す...

HTML およびプラグイン アプリケーションにおけるデータ カスタム属性の使用の概要

HTML にはデータ属性が含まれていることがよくあります。これらは HTML5 のカスタム属性です。...

VMware 仮想マシンのインストール Linux システムのグラフィック チュートリアル

この記事では、LinuxシステムのVMwareインストールの具体的な手順を参考までに紹介します。具体...

CentOS8 yum/dnfで国内ソースを設定する方法

CentOS 8 ではソフトウェア パッケージのインストール プログラムが変更され、yum 構成方法...

mysql での rpm インストールの詳細な説明

インストールとアンインストールの表示 # rpm -qa | grep mysql を表示 # アン...

テーブルを使用する場合と CSS を使用する場合 (経験の共有)

TW のメインテキスト ページは、以前は小さなモニターと低解像度のユーザーを考慮して幅が 850 ピ...

IDEA2021 tomcat10 サーブレットの新しいバージョンの落とし穴

私が学習していたときに使用していたバージョンは比較的新しいものであり、インターネット上のチュートリア...

Linuxでテキスト比較を実現するコツを教えます

序文コードを書く過程で、必然的にコードに何らかの変更を加えることになります。しかし、変更を加えるとき...