スクロールバーのスタイルを設定するための CSS サンプルコード

スクロールバーのスタイルを設定するための CSS サンプルコード

スクロール バーのスタイルを設定するための CSS 実装コードは次のとおりです。

•::-webkit-scrollbar スクロールバー全体
•::-webkit-scrollbar-thumb スクロールバー内の小さな四角形は、上下(または、垂直スクロールバーか水平スクロールバーかに応じて左右)に移動できます。
•::-webkit-scrollbar-track スクロールバーのトラック(内部にThumbを含む)
•::-webkit-scrollbar-button スクロールバー トラックの両端にあるボタンをクリックすると、小さな四角形の位置を微調整できます。
•::-webkit-scrollbar-track-piece 内側のトラック、スクロールバーの中央部分(削除)
•::-webkit-scrollbar-corner 2つのスクロールバーが交わる角
•::-webkit-resizer 2つのスクロールバーの交差点にある小さなコントロールで、ドラッグして要素のサイズを変更します。

/*水平スクロールバーと垂直スクロールバーのサイズに応じて、スクロールバーの高さと幅、および背景の高さと幅を定義します*/
::-webkit-スクロールバー
{
    幅: 16px;
    高さ: 16px;
    背景色: #F5F5F5;
}
/*スクロールバートラックの内側の影と丸い角を定義します*/
::-webkit-スクロールバー-トラック
{
    -webkit-box-shadow: インセット 0 0 6px rgba(0,0,0,0.3);
    境界線の半径: 10px;
    背景色: #F5F5F5;
}
/*スライダーの内側の影と丸い角を定義します*/
::-webkit-スクロールバー-サムネイル
{
    境界線の半径: 10px;
    -webkit-box-shadow: インセット 0 0 6px rgba(0,0,0,.3);
    背景色: #555;
}

詳細設定

スクロール バーを定義するには疑似要素と疑似クラスを使用しますが、疑似要素と疑似クラスとは何でしょうか。

疑似クラス (link、:focus、:hover) は誰でもよく知っているはずです。さらに、:nth-child、:last-child、:nth-last-of-type() など、多くの疑似クラス セレクターが CSS3 に追加されています。

これまでに CSS の疑似要素を見たことがあるでしょう: :first-line、:first-letter、:before、:after。その後、CSS3 では疑似要素が調整され、以前のベースに「:」が追加され、現在は「::first-letter,::first-line,::before,::after」になり、CSS3 では「::selection」も追加されました。 2 つの「::」と 1 つの「:」は、主に CSS3 で疑似クラスと疑似要素を区別するために使用されます。

Webkit の疑似クラスと疑似要素の実装は非常に強力です。スクロール バーはページ要素として定義でき、グラデーション、丸い角、RGBa などの高度な CSS3 プロパティと組み合わせることができます。その後、いくつかの場所で画像を使用する必要がある場合は、画像を Base64 に変換できます。そうしないと、毎回複数の画像を読み込む必要があり、リクエストの数が増加します。

境界線、影、背景画像など、任意のオブジェクトを設定できます。作成されたスクロール バーは、オペレーティング システム自体の設定に従って、インタラクティブな動作を実行します。上記の疑似要素には、次の疑似クラスを適用できます。少し複雑です。書き方の詳細については、最初のデモを参照してください。そこにコメントもあります。

:水平
//horizo​​ntal疑似クラスは、任意の水平スクロールバーに適用されます: vertical
//垂直疑似クラスは、垂直スクロールバーに適用されます: 減分
// 減分疑似クラスはボタンとトラック ピースに適用されます。減少を表すボタンまたはトラックフラグメント。たとえば、領域を上または右に移動できる領域またはボタンなど: 増加
// 増分疑似クラスはボタンとトラック ピースに適用されます。領域を下または左に移動できる領域またはボタンなどの増分ボタンまたはトラックフラグメントを示します: start
//開始疑似クラスはボタンとトラックピースに適用されます。オブジェクト(ボタントラックフラグメント)がスライダーの前に配置されているかどうかを示します: end
//end 疑似クラスはボタンとトラック ピースに適用されます。オブジェクト(ボタントラックフラグメント)がスライダーの後ろに配置されているかどうかを示します:ダブルボタン
//ダブルボタン疑似クラスは、ボタンとトラックピースの両方に適用されます。トラックがボタンのペアで終了するかどうかを決定します。つまり、軌道上の破片は一対のボタンの隣にあるのです。
:シングルボタン
// シングルボタン疑似クラスは、ボタンとトラックピースの両方に適用されます。トラックの終わりがボタンであるかどうかを決定します。つまり、軌道フラグメントは別のボタンの隣にあります。
:ボタンなし
no-button 疑似クラスは、トラックの最後にボタンがないことを示します。
:コーナープレゼント
//コーナー存在疑似クラスは、スクロール バーのコーナーが存在するかどうかを示します。
:ウィンドウ非アクティブ
//すべてのスクロール バーに適用可能で、ウィンドウにフォーカスがない場合にスクロール バーを含む領域を示します。
::-webkit-スクロールバー-トラックピース:開始{
/* スクロールバーの上部または左半分 */
}
::-webkit-スクロールバー-サムネイル:ウィンドウ非アクティブ{
/*フォーカスが現在のエリアスライダー状態にない場合*/
}
::-webkit-スクロールバーボタン:水平:減分:ホバー{
/*マウスが水平スクロールバーの下のボタン上にあるときの状態*/
}

要約する

上記は、エディターが紹介した CSS を使用してスクロール バーのスタイルを設定するサンプル コードです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。エディターがすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  HTML特殊文字の徹底分析

>>:  MySQL 8.0.23 のレプリケーション アーキテクチャにおけるスレーブ ノードの自動フェイルオーバー

推薦する

Mysql インデックスと Redis ジャンプテーブルについての簡単な説明

まとめインタビュー中、MySQL インデックスの問題について議論しているときに、B+ ツリー、B ツ...

Nginx フォワード プロキシとリバース プロキシ、および負荷分散機能の構成コード例

この記事は主に、Nginx のフォワード プロキシとリバース プロキシ、および負荷分散機能の設定コー...

docker run 起動パラメータ コマンドを表示する方法 (推奨)

runlike を使用してコンテナの docker run 起動パラメータを表示します。 pipを...

CentOS 7.6 Telnetサービス構築プロセス(Opensshアップグレードバトル第一弾のバックアップトランスポートライン構築)

不明な点があるときはいつでも、Blog Park にアクセスして、いつでも答えやインスピレーションを...

HTML でのアンカーポイントの使用_PowerNode Java アカデミー

ここで、アンカー ポイントを制御するいくつかの状況をまとめてみましょう。 1. 同じページ <...

Sysbench の MySQL ベンチマーク プロセスの分析

序文1.ベンチマークは、テスト オブジェクトのクラスの特定のパフォーマンス指標の定量的、再現可能、比...

CSS3でよく使われるスタイルの詳しい解説[基本的なテキストとフォントのスタイル]

概要: Web ページをより美しく見せるために、ここでは CSS3 でよく使用されるスタイルをいくつ...

Dockerボリューム権限管理の詳細な説明

ボリュームデータボリュームは Docker の重要な概念です。データ ボリュームは、1 つ以上のコン...

CSS3の3D効果を使って立方体を作成する

CSS3 の 3D 効果を使用して立方体を作成する方法を学ぶと、3D シーンの回転と変位のプロパティ...

フロントエンドページのスライド検証を実装するための JavaScript + HTML

この記事では、フロントエンドページのスライド検証を実装するためのJavaScript + HTMLの...

シェルスクリプトを使用したMySQLデータベースの自動バックアップ

シェルスクリプトを使用したMySQLデータベースの自動バックアップデータベースを頻繁にバックアップす...

MySQL json 形式のデータクエリ操作

デフォルトのテーブル名はbase_dataで、json列名はjson_valueです。 json_v...

dockercompose を使用して springboot-mysql-nginx アプリケーションをビルドする

前回の記事では、Docker を使用して、コンパイルされた jar パッケージをイメージに組み込む ...

MySQLデータベーステーブルの定期バックアップの実装の詳細な説明

Mysqlデータベーステーブルの定期的なバックアップの実装0. 背景実際の開発環境では、フロントエン...

テーブルタグ(TAGS)の詳細な紹介

テーブルの基本構文<table>...</table> - テーブルを定義し...