Vue でスクロールバーのスタイルを変更する方法

Vue でスクロールバーのスタイルを変更する方法

まず、スクロール バーのスタイルを変更するには、疑似要素-webkit-scrollbarを使用することを知っておく必要があります。

::-webkit-scrollbar WebKitブラウザ (Google Chromeや Apple Safari など) のみをサポートすることに注意してください。

次に、スクロール バーのコンポーネントのいくつかを理解する必要があります。

  • ::-webkit-scrollbar スクロールバー全体、幅等を設定できます。
  • ::-webkit-scrollbar-thumb スクロールバー内のスライダー
  • ::-webkit-scrollbar-button スクロールバートラックの両端にあるボタンをクリックすると、スライダーの位置を微調整できます。
  • ::-webkit-scrollbar-track スクロールバーのトラック(内側につまみがある)
  • ::-webkit-scrollbar-track-piece スライダーのないスクロールバーのトラック部分
  • ::-webkit-scrollbar-corner 垂直スクロールバーと水平スクロールバーの交差点
  • ::-webkit-resizer 一部の要素の角部分(テキストエリアのドラッグ可能なボタンなど)

これをある程度理解したら、スクロール バーのスタイルの変更を開始できます。

コード実装:

<ul class="nav-tabs-scroll">
  <li v-for="(item,index) タブ内" :key="index" class="nav-item-scroll">{
<!-- -->{item.text}}</li>
</ul>
<v-textarea アウトライン v-model="text" style="width: 200px; margin: 16px;" class="text"></v-textarea>


データ: () => ({
      タブ: [
        { 値: 4001、テキスト: 'ローンログ'、コード: 'LOAN_LOG' },
        { 値: 4002、テキスト: 'ドキュメント ログ'、コード: 'DOCUMENT_LOG' },
        { 値: 4003、テキスト: 'メモログ'、コード: 'NOTE_LOG' },
        { 値: 4004、テキスト: '操作ログ'、コード: 'OPERATION_LOG' },
        { 値: 4005、テキスト: '支払いログ'、コード: 'PAYMENT_LOG' },
        { 値: 4006、テキスト: 'メンテナンス ログ'、コード: 'MAINTENANCE_LOG' },
        { 値: 4007、テキスト: 'トランザクション ログ'、コード: 'TRANSACTION_LOG' },
        { 値: 4008、テキスト: 'コレクション ログ'、コード: 'COLLECTION_LOG' }、
        { 値: 4001、テキスト: 'ローンログ'、コード: 'LOAN_LOG' },
        { 値: 4002、テキスト: 'ドキュメント ログ'、コード: 'DOCUMENT_LOG' },
        { 値: 4003、テキスト: 'メモログ'、コード: 'NOTE_LOG' },
        { 値: 4004、テキスト: '操作ログ'、コード: 'OPERATION_LOG' },
        { 値: 4005、テキスト: '支払いログ'、コード: 'PAYMENT_LOG' },
        { 値: 4006、テキスト: 'メンテナンス ログ'、コード: 'MAINTENANCE_LOG' },
        { 値: 4007、テキスト: 'トランザクション ログ'、コード: 'TRANSACTION_LOG' },
        { 値: 4008、テキスト: 'コレクション ログ'、コード: 'COLLECTION_LOG' }、
        { 値: 4001、テキスト: 'ローンログ'、コード: 'LOAN_LOG' },
        { 値: 4002、テキスト: 'ドキュメント ログ'、コード: 'DOCUMENT_LOG' },
        { 値: 4003、テキスト: 'メモログ'、コード: 'NOTE_LOG' },
        { 値: 4004、テキスト: '操作ログ'、コード: 'OPERATION_LOG' },
        { 値: 4005、テキスト: '支払いログ'、コード: 'PAYMENT_LOG' },
        { 値: 4006、テキスト: 'メンテナンス ログ'、コード: 'MAINTENANCE_LOG' },
        { 値: 4007、テキスト: 'トランザクション ログ'、コード: 'TRANSACTION_LOG' },
        { 値: 4008、テキスト: 'コレクション ログ'、コード: 'COLLECTION_LOG' }
      ]、
      文章: ''
    })、


<style lang="scss" スコープ>
  .nav-tabs-scroll {
    高さ: 100px;
    リストスタイル: なし;
    マージン: 0px;
    パディング: 16px 0;
    オーバーフローx: 自動;
    表示: インラインブロック;
    空白: ラップなし;
    幅: 100%; 
    背景: #F9FAFD;
  }
  .nav-item-scroll {
    背景: #E5F0FF;
    色: #24252E;
    フォントサイズ: 12px;
    フォントの太さ: 400;
    行の高さ: 16px;
    パディング: 8px 8px 180px;
    テキスト配置: 中央;
    表示: インライン;
    マージン: 0 4px 0;
    境界線の半径: 16px;
  }
  .nav-tabs-scroll::-webkit-scrollbar {
    幅: 20px;
    高さ: 10px;
  }
  .nav-tabs-scroll::-webkit-scrollbar-thumb {
    境界線の半径: 5px;
    背景: 赤;
  }
  .nav-tabs-scroll::-webkit-scrollbar-button {
    幅: 10px;
    境界線の半径: 50%;
    背景:黒;
  }
  .nav-tabs-scroll::-webkit-scrollbar-track {
    ボックスシャドウ: インセット 0 0 2px #333;
    境界線の半径: 5px;
    背景: 青;
  }
  .nav-tabs-scroll::-webkit-scrollbar-corner {
    背景: スプリンググリーン;
  }
  /*
  .nav-tabs-scroll::-webkit-scrollbar-track-piece {
    ボックスシャドウ: インセット 0 0 2px #333;
    境界線の半径: 5px;
    背景:プラム;
  }
  */
</スタイル>
<スタイル>
  .text.v-textarea テキストエリア::-webkit-resizer {
    背景: ピンク;
  }
</スタイル>


デフォルトのスタイル:

変更されたスタイル:

これで、Vue でスクロール バーのスタイルを変更する方法についての記事は終了です。Vue でスクロール バーのスタイルを変更する方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vueはスクロールバースタイルを実装します
  • Vueは2つのエリアスクロールバーの同期スクロールを実装します
  • Vue.js デスクトップ カスタム スクロール バー コンポーネント 美化 スクロール バー VScroll
  • Vueはスクロールバーを記憶し、ドロップダウンの読み込みを実装するのに最適な方法です
  • Vueでスクロールバーのスタイルを変更する方法
  • Vue はデータのレンダリング後にスクロールバーの位置制御を実装します (推奨)
  • Vue スクロールバープラグインの実装コード
  • Vueフレームワークでカスタムスクロールバー(easyscroll)を実装する方法

<<:  CSS の Flex レイアウトを使用してシンプルな縦棒グラフを作成する方法

>>:  ウェブページ作成によく使われる英語フォント

推薦する

Centos ベースイメージの作成方法

序文現在、私の会社で使用しているオペレーティングシステムはすべて CentOS7.4 で、アプリケー...

React NativeのScrollViewプルダウンリフレッシュ効果

この記事では、React Native ScrollViewのプルダウンリフレッシュ効果の具体的なコ...

Linux仮想マシンの静的IPアドレスを構成するための手順を完了します

序文多くの場合、仮想マシンを使用します。たとえば、一部のテストは検出されません。何かを壊すことを心配...

Nginx+SpringBoot による負荷分散の実装例

負荷分散の概要Nginx の負荷分散実装を紹介する前に、負荷分散の分類について簡単に説明します。負荷...

例を通してBRタグとPタグの違いを理解する

<br />改行タグの使用<br>改行タグ<br>は終わりのない...

VMware Workstation 14 Pro は CentOS 7.0 をインストールします

VMware Workstation 14 ProにCentOS 7.0をインストールする具体的な方...

Vue ディレクティブ v-html と v-text

目次1. v-text テキストレンダリング命令2. v-html 1. v-text テキストレン...

Linux で ss コマンドと zabbix を組み合わせてソケットを監視する方法の詳細な説明

目次序文1. ssコマンド2. Zabbix監視マシンの全体的なソケットステータス2.1. スクリプ...

HTML フレーム、Iframe、フレームセットの違い

10.4.1 フレームセットとフレームの違い まず、フレームセットとフレームの違いについて説明します...

Linux の一般的な基本コマンドと使用方法

この記事では、一般的な基本的な Linux コマンドとその使用方法を例を使って説明します。ご参考まで...

画像の下部の空白部分の問題を解決する

最近のプロジェクトに取り組んでいるとき、下の図に示すように、画像を参照すると常に下部に空白スペースが...

layui をベースにしたログインページの実装

この記事の例では、ログインページを実装するためのlayuiの具体的なコードを参考までに共有しています...

Vue v-model 関連の知識のまとめ

​v-model は、入力とフォーム データ間、または 2 つのコンポーネント間の双方向データ バイ...

MySQLでページングクエリを実装する方法

SQL ページング クエリ:背景会社のシステムには、構成管理用のプラットフォーム、いわゆる CRUD...

ホワイトボードを踏まないようにするゲームを実装するための HTML+CSS+JS

目次背景1. 思考分析2. ページ構成2.1 HTML レイヤー2.2 CSS レイヤー2.3 JS...