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 レイアウトを使用してシンプルな縦棒グラフを作成する方法

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

推薦する

Ubuntu 16.04 で Python 3 を使用して Django プロジェクトを作成し、実行する方法

ステップ1: Djangoプロジェクトを作成するターミナルを開き、書き込みたいプロジェクトのアドレス...

Vue プロジェクトで TS (TypeScript) を使用するための入門チュートリアル

目次1. Typescriptの紹介2. 設定ファイル webpack 設定3. プロジェクトに.t...

VMWare 仮想マシン 15.X LAN ネットワーク構成チュートリアル図

最近、分散型およびビッグデータ技術について学ぶために、いくつかの仮想マシンに取り組んでいます。まず、...

docker リモート API のワンクリック TLS 暗号化の実装

目次1. Docker の 2375 ポートを別のポートに変更します。これは一時的な対策にすぎません...

JavaScript の遅延読み込み属性パターンを理解する

従来、開発者はインスタンスで必要になる可能性のあるデータに対して JavaScript クラス内にプ...

ネイティブ JavaScript でオブジェクトが空かどうかをチェックする実装例

目次ネイティブJavaScriptとはA. 新しいブラウザでnullオブジェクトをチェックするコンス...

Linux での MySQL 8.0 インストール チュートリアル

この記事では、LinuxでMySQL 8.0をインストールする方法を紹介します。具体的な内容は次のと...

Zabbix を使用して Nginx/Tomcat/MySQL を監視する方法の詳細なチュートリアル

目次ZabbixはNginxを監視するZabbixはTomcatを監視するZabbixはMySQLを...

dockerネットワーク双方向接続の詳細な説明

Dockerネットワークを見るdocker ネットワーク ls [root@master ~]# d...

Ubuntu で VIM を C++ 開発エディタとして設定する

1. 設定ファイルをユーザー環境にコピーし、新しい.vimフォルダを作成し、バンドルサブフォルダを作...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

CocosCreatorがスキル冷却効果を実装

CocosCreatorがスキルCD効果を実現多くのゲームにはスキルがあります。プレイヤーがスキルボ...

この記事では、jsのデータ型とデータ構造の世界を紹介します。

目次1. 動的型付けとは何ですか? 2. データ型2.1 プリミティブ型 (6 つのプリミティブ型、...

MySQL トリガー: トリガーの作成と使用

この記事では、例を使用して MySQL トリガーの作成と使用について説明します。ご参考までに、詳細は...

クリックナンバーゲームを実装するネイティブJS

参考までに、クリックナンバーゲームをネイティブJSで実装しました。具体的な内容は以下のとおりです。最...