el-select のスタイルを変更する方法の詳細な説明: popper-append-to-body と popper-class

el-select のスタイルを変更する方法の詳細な説明: popper-append-to-body と popper-class

elementUI が提供する el-select コンポーネントのスタイルを変更する方法

この問題に対する解決策はインターネット上にたくさんあります。

1. ドロップダウン ボックスのクラス名を見つけて、それを全局樣式覆蓋を記述します。
2. .el-select-dropdown__itemのスタイルを変更する
3. 公式サイトで提供されているpopper-classを使用してスタイルを変更します。

しかし、上記の方法は要点を押さえていません。グローバル スタイルをオーバーライドすることは決してユーザーフレンドリーではありませんし、スタイルを変更したりクラスを追加したりしても機能しません。そこで、ドロップダウン ボックスのスタイルを確認しました。ドロップダウン ボックスはel-selectではなく、次のように最外層に配置されていました。

次に、公式 Web サイトにアクセスして、それを制御するプロパティがあるかどうかを確認したところ、確かに、 popper-append-to-bodyというプロパティがありました。

デフォルト値はtrueです。動作させるにはfalseに変更してください。

html

<el-選択
    :popper-append-to-body="false"
    v-model="タスクタイプ"
    placeholder="選択してください"
    サイズ="ミニ"
    クラス="select-style"
    ポッパークラス="select-popper"
  >
    <el-オプション
      v-for="(item,index) in taskTypes"
      :key="インデックス"
      :value="アイテムの値"
      :label="アイテム.ラベル"
    </el-option>
  </el-select>

コード構造は次のとおりです。

実際、これはドロップダウン ボックス内のスタイルのみを変更します。入力ボックスのスタイルも、 .el-input__innerスタイルを変更して変更する必要があります。

CS

.select-style {
    幅: 3rem;
    右マージン: 0.36rem;
    /deep/.el-input__inner {
      左上の境界線の半径: 0;
      境界線の左下の半径: 0;
      境界線: 1px実線 #a1a3ad;
      左境界線の幅: 0;
      背景色: rgba(0, 0, 0, 0.8);
      フォントファミリ: PingFangSC-Regular;
      フォントサイズ: 0.28rem;
      色: rgba(255, 255, 255, 0.6);
    }
  }

最後に、 .select-popperのスタイルを添付します。

/deep/.select-popper {
    背景色: $item-bg-color;
    境界線の半径: 0.08rem;
    境界線: 実線 0.02rem #1c395d;
    フォントファミリ: PingFangSC-Regular;
    .el-select-dropdown__item.selected {
      フォントファミリ: PingFangSC-Regular;
      フォントサイズ: 0.28rem;
      色: rgba(74, 141, 253, 1);
    }
    li {
      色: #fff;
      背景: 透明;
      色: #fff;
      フォントサイズ: 0.28rem;
    }
    .el-select-dropdown__item:hover,
    .el-select-dropdown__item.hover {
      背景色: rgba(110, 147, 206, 0.2);
      右マージン: 1px;
    }
    .popper__arrow::after {
      下部の境界線の色: $item-bg-color;
    }
    .ポッパー__矢印{
      下部の境界線の色: $item-bg-color;
    }
    .el-select-dropdown__empty {
      パディング: 0.2rem;
      フォントサイズ: 0.28rem;
    }
  }

要約する

キーポイント: :popper-append-to-body="false" 、次にpopper-classを追加してスタイルを変更します。

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

<<:  プロフェッショナルおよび非プロフェッショナルのウェブデザイン

>>:  JavaScript の基礎: 即時実行関数

推薦する

MySQL スロークエリログの設定と使用方法のチュートリアル

序文MySQL スロー クエリ ログは、日常業務でよく遭遇する機能です。MySQL スロー クエリ ...

モバイルフロントエンド適応ソリューション(概要)

ネットで検索してみたところ、多くの面接でモバイル適応方法について質問されることが分かりました。最近い...

Vue で計算プロパティを使用する際の知識ポイントのまとめ

計算されたプロパティ場合によっては、テンプレートにロジックを詰め込みすぎると、テンプレートが重くなり...

Angularプロジェクトにおける共有モジュールの実装の詳細な説明

目次1. 共有共通モジュール2. 共有マテリアルモジュール3. 共有確認ダイアログ1. 共有共通モジ...

CSS 兄弟要素フローティング分析の概要

float:左/右/なし; 1. 同じレベルフローティング(1)ブロックレベル要素を同じ行に表示する...

mysqlはルートユーザーと一般ユーザーを作成し、機能を変更および削除します。

方法1: SET PASSWORDコマンドを使用する mysql -u ルート mysql> ...

TypeScript の Enum が問題となる理由

目次どうしたの?いつ使うか列挙の数を制御するビット値コントロールインデックス非数値列挙結論はType...

nginx をシャットダウン/再起動/起動する方法

閉鎖サービス nginx 停止systemctl 停止 nginx起動するサービス nginx 開始...

Win7 64 ビット版に MySQL 5.7 をダウンロードしてインストールする際によくある問題の概要

1. 公式ウェブサイトからMySQLをダウンロードします。 これが私たちが探しているものです、win...

MySQL 8.0 の新機能 - チェック制約の紹介

目次序文チェック制約作成、削除、表示制限要約する序文MySQL 8.0 では、チェック制約という非常...

JS を使用してデータ型を決定する 4 つの方法

目次序文1. 型2. インスタンス3. コンストラクター詳細: 4. 文字列要約する序文Javasc...

Node.js を使用してパスワード ジェネレータを作成するための完全な手順

目次1. 準備2. コマンドラインの記述2.1 バージョンと説明を追加する2.2 パスワードの長さを...

MySQL を解凍してインストールおよび完全に削除する方法の詳細なグラフィック説明

1. MySQLをインストールする(1)ダウンロードしたMySQLの圧縮ファイルをMySQLをインス...

Windows 10 での MySQL 5.7.19 インストール チュートリアル MySQL のルート パスワードを忘れた場合の変更方法

MySQL 5.7.19のインストールを例に挙げると、まずダウンロードしますもちろん、最初に行うこと...