Vue3 シングルファイルコンポーネントのスタイル機能の詳細な説明

Vue3 シングルファイルコンポーネントのスタイル機能の詳細な説明

スタイルスコープ

注意事項:

  • スタイルは他のコンポーネントには影響せず、現在のコンポーネントにのみ有効になります。
  • 子コンポーネントのルート要素は、親コンポーネントのスコープ スタイルと子コンポーネントのスコープ スタイルの両方の影響を受けます。これにより、親コンポーネントが子コンポーネントのレイアウトを調整できるようになります。
  • 特別なセレクターが 3 つあります。

1. ディープセレクター: 子コンポーネントに影響を与える可能性があります。疑似クラス => :deep(cls: 影響を受けるセレクター) を使用します。

    .a :deep(.b) {
        ...
    }

2. スロットセレクター: スロットコンテンツのスタイルに影響を与えます。疑似クラスを使用する => :slotted(selector)

    :sloted(.a) {
        ...
    }

3. グローバルセレクター: スタイルはグローバル環境に影響します。 疑似クラスを使用する => :global(selector)

    :sloted(.a) {
        ...
    }

スコープ付きスタイルはスタイルとともに存在できる

スタイルモジュール

スタイル タグにはモジュールが含まれています。そのスタイルは、スタイル スコープと同様に、現在のコンポーネントにのみスコープできます。

このメソッドは、CSS を CSS モジュールにコンパイルし、CSS スタイルを使用するためにコンポーネントの $styles オブジェクトに公開します。

<テンプレート>
  <p :class="$style.red">
    これは赤であるべきだ
  </p>
</テンプレート>

<スタイルモジュール>
。赤 {
  色: 赤;
}
</スタイル>

モジュールに値を割り当てて、公開されるオブジェクトの名前をカスタマイズできます

<テンプレート>
  <p :class="style.red">
    これは赤であるべきだ
  </p>
</テンプレート>

<スタイル モジュール = 'スタイル'>
。赤 {
  色: 赤;
}
</スタイル>

useCssModule() API を使用して、結合された API で cssModule を使用できます。

// デフォルトでは、<style module> useCssModule() のクラスを返します

// 名前を付けて、<style module="classes"> でクラスを返す useCssModule('classes')

状態駆動型動的CSS

v-bind() を使用して、CSS 値を動的コンポーネントの状態と関連付けることができます。

<テンプレート>
  <div class="text">こんにちは</div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  データ() {
    戻る {
      色: 「赤」
    }
  }
}
</スクリプト>

<スタイル>
。文章 {
  色: v-bind(色);
}
</スタイル>

要約する

これで、vue3 シングルファイル コンポーネントのスタイル機能に関するこの記事は終了です。vue3 シングルファイル コンポーネントのスタイル機能に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vite2+Vue3を使用してMarkdownドキュメントをレンダリングする練習
  • Vue3ナビゲーションバーコンポーネントのカプセル化実装方法
  • Vue3 Vue イベント処理ガイド
  • vue3.0+echarts は 3 次元の縦棒グラフを実現します
  • この記事では、Vue 3.0 レスポンシブの使い方を説明します。
  • vue3.2 で追加された defineCustomElement の基本原理の詳細な説明
  • Vue3 + TypeScript 開発の概要
  • Vue3+TypeScriptは再帰メニューコンポーネントの完全な例を実装します
  • Vue3はToDoリストを実装する
  • Vue3+スクリプト設定+ts+Vite+Volarプロジェクト
  • Vue3 コンポジション API でロジックの再利用を実装する方法
  • Vue3は画像拡大鏡効果を実現します
  • vue3.0+vant3.0の迅速なプロジェクト構築の実装
  • Vue3 ドキュメント クイックスタート

<<:  Windows 10 での MySQL 8.0.20 のインストールと設定方法のグラフィック チュートリアル

>>:  CentOS 7 に MySQL 8.0.20 データベースをインストールするための詳細なチュートリアル

推薦する

CSS カウンターとコンテンツの概要

コンテンツ プロパティは CSS 2.1 で導入され、:before および :after 疑似要素...

JavaScript axiosのインストールとパッケージ化のケースの詳細な説明

1. axiosプラグインをダウンロードする cnpm インストール axios -S 2. mai...

Linux の特別な権限 SUID、SGID、SBIT の詳細な説明

序文Linux のファイルまたはディレクトリの権限については、通常の rwx 権限についてすべて知っ...

js でオブジェクトとオブジェクト メソッドを作成するいくつかの方法の詳細な説明

この記事は、JS レッドブックの第 8 章に記載されているオブジェクトに関する 2 番目の記事です。...

シンプルなナビゲーションバー機能を実現するHTML+CSS

さっそく、コードを見てみましょう(初心者:特に言うことはありません) <!DOCTYPE ht...

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

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

VUE+SpringBootはページング機能を実装します

この記事では主に、Vue + SpringBoot でページ分割されたリストデータを実装する方法を紹...

Docker ファイルの保存パス、ポート マッピング操作モードの変更

コンテナの起動コマンドを取得する方法コンテナはすでに作成されていますが、その起動パラメータ(データが...

子コンポーネントで vue activated を使用する詳細

ページ: ベース: <テンプレート> <div class="タブコンテ...

React onClickにパラメータを渡す問題について話しましょう

背景下のようなリストでは、削除ボタンをクリックすると削除操作を実行する必要があります。 リスト生成:...

Nginx の動的および静的分離実装ケースのコード分析

静的と動的の分離動的リクエストと静的リクエストはミドルウェアを通じて分離され、不要なリクエストの消費...

MYSQL スロークエリとログの例の説明

1. はじめにスロークエリログを有効にすると、MySQL は指定された時間を超えるクエリステートメン...

Linuxシステムにmsfをインストールするプロセスの詳細な説明

または、インストールプロセスを自分で書き留めてください。私のサーバーシステムはAliyun Linu...

MySQL SQL文の特殊処理文のまとめ(必読)

1.テーブル全体を更新します。データ行の列の値が空の場合は、別の列フィールドの値と同じにします。 ...

CentOS7環境でDockerを使ってPHP動作環境を構築する手順を詳しく解説

関連記事: CentOS7でyumを使用してDockerをインストールするDockerを使ってWin...