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

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

推薦する

Vue フロントエンド開発における keepAlive の使用方法の詳細な説明

目次序文keep-avlive フック関数keep-avliveはどのコンポーネントをキャッシュする...

IE6 スペースバグ修正方法

コードを見てみましょう:コードをコピーコードは次のとおりです。 < !DOCTYPE html...

jsはaudioContextを通じて3Dサウンド効果を実現します

この記事では、audioContextを介して3Dサウンド効果を実現するためのjsの具体的なコードを...

crontab スケジュールされたタスクが実行されない理由の分析と解決

序文Linux のスケジュールされたタスクを実装する方法としては、cron、anacron、at な...

美容・スタイリングウェブサイト向けのカラーマッチングテクニックと効果表示

色はあらゆるウェブサイトにとって最も重要な要素の 1 つであり、閲覧者に大きな影響を与えるため、色の...

Vue で Axios カプセル化を使用するための完全なチュートリアル

序文現在、プロジェクトでは、Axios ライブラリが HTTP インターフェース リクエストによく使...

Dockerコンテナのいくつかの保存方法の詳細な説明

目次前面に書かれた複数のストレージマウント方法1.バインドマウント2. 巻数3.tmpfsマウントス...

mysql 8.0.19 winx64.zip インストール チュートリアル

この記事は参考までにmysql 8.0.19 winx64.zipのインストールチュートリアルを記録...

MySQL トランザクションの詳細

目次導入取引の4つの特徴トランザクション分離レベル確認するMVCC現在の読書スナップショット読み取り...

MySQL トランザクション分離レベルと MVCC の詳細な説明

目次トランザクション分離レベル同時トランザクション実行中に発生した問題SQL標準の4つの分離レベルM...

私のCSSアーキテクチャのコンセプト - それは人によって異なり、ベストなものはなく、適切なものだけがある

はじめに<br />私はフロントエンド分野でかなり長い間働いており、CSS分野でも長い間...

デザインにおけるユーザーエクスペリエンスの背後にある8つのユーザー本能について話す

編集者注: この記事は、Teambition チームの @娄昊川 が寄稿したものです。Teambit...

Linux sedコマンドの使用

1. 機能紹介sed (Stream EDitor) は、コンテンツを 1 行ずつ処理するストリーム...

mysql8.0.11 winx64 インストールと設定のチュートリアル

mysql 8.0.11 winx64のインストールチュートリアルは以下のように記録され、みんなと共...