ネイティブ フレームワークを使用してミニプログラムを開発しているときに、app.wxss で定義されたグローバル スタイルがカスタム コンポーネントでは有効にならないという問題が発生しました。その後、これはミニプログラム コンポーネント スタイルの分離の構成によって発生したことが判明しました。 長すぎて読めないコンポーネントの json ファイルに次の構成を追加すると、グローバル スタイルが有効になります。 //コンポーネント.json 「styleIsolation」:「共有を適用」 js ファイルで設定したい場合、またはバージョン番号が 2.10.1 未満の場合は、同じ効果で js ファイルに記述することもできます。 //コンポーネント.js 成分({ オプション: スタイル分離: 'apply-shared' } }) バージョン番号が 2.6.5 未満の場合は、styleIsolation の代わりに次の構成を使用できます: 'apply-shared' //コンポーネント.js 成分({ オプション: グローバルクラスを追加: true } }) コンポーネントスタイルの分離コンポーネントの styleIsolation には、次の 3 つのオプション値があります。
デモテストより直感的な体験を実現するために、デモを作成し、簡単な実験を実施しました。 コンポーネント comp を定義し、ページ インデックスに導入します。 <!-- comp.wxml --> <view class="test1 testbox">comp1</view> <view class="test2 testbox">comp2</view> <view class="test3 testbox">comp3</view> <!-- index.wxml --> <comp /> <view class="test3 testbox">インデックス3</view> 次に、test1、test2、test3 の色を、それぞれグローバル、ページ、コンポーネントの世界で赤、緑、青として定義します (testbox のスタイルは省略します)。 /* アプリ.wxss */ .テスト1 { 背景色: ライトピンク; } /* コンポーネント/index.wxss */ .テスト2 { 背景色: 薄緑; } /* コンポーネント/comp.wxss */ .test3 { 背景色: 水色; } 次に、コンポーネントの styleIsolation プロパティに異なる値が設定され、結果は次のようになります。 ご覧のとおり、デフォルトの分離モードでは、親ページもグローバル スタイルも有効ではありません。apply-shared モードでは、ページ スタイルとグローバル スタイルをコンポーネントに適用できます。共有モードでは、コンポーネント スタイルが親ページに適用されます。 優先度さらに、テストの結果、同じセレクターの場合、スタイルの優先順位はコンポーネント スタイル > ページ スタイル > グローバル スタイルとなり、これは基本的にコンポーネントに対して直感的です。ただし、コンポーネントが共有を適用すると、そのコンポーネント内のスタイルによってページ内のスタイルも上書きされるため、少し奇妙になります。 まとめると、特別な必要がない限り、共有モードを慎重に使用し、セレクタの競合と相互上書きを最小限に抑えて、不必要な超自然的な事故を回避することをお勧めします。共有が必要なスタイルについては、状況に応じてグローバルレベルに抽出したり、CSS ファイルをインポートして実装したりできます。 ページの分離構成ミニプログラムのページは実際にはコンポーネントであるため、styleIsolation プロパティも設定できます。カスタム コンポーネントとは異なり、ページの既定値は share であるため、デフォルトでグローバル スタイルをページに適用できます。 さらに、3 つの追加属性値がページに追加されます。ドキュメントにはそれぞれの説明があるものの、実際に試してみて非常に混乱し、それぞれの正確な機能や違いがまったくわかりませんでした。ページをisolated / page-isolatedに設定した後、ページ独自のスタイルが無効になるという謎のバグもありました。実装に問題があるのかもしれません。そのため、ページの styleIsolation 設定を安易に変更しないことをお勧めします。ご興味がおありの場合は、記事の最後にあるリンクをクリックして、ご自身で勉強し、実験してみてください。 比較的確実な選択肢は 1 つだけです。page-shared を設定すると、ページ (およびその中のコンポーネント) は app.wxss のグローバル スタイルをブロックし、他の側面への影響は小さくなるはずです。必要に応じて試すことができます。 参考文献WeChat公式ドキュメント · ミニプログラム これで、ミニプログラムのカスタム コンポーネントでグローバル スタイルが反映されない問題の解決方法についての記事は終了です。ミニプログラムのコンポーネントでグローバル スタイルが反映されない問題の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
今日会社から課題をもらったのですが、効果図は以下のとおりです。 どのような効果を実現したいかは特に決...
重要な注意: この記事を読む前に、Docker コンテナに関する知識と、一般的な Docker 操作...
MIME タイプとは何ですか? 1. まず、ブラウザがコンテンツを処理する方法を理解する必要がありま...
まず、docker に openssh-server をインストールします。インストールが完了したら...
目次1. JSONPとは何か2. JSONPクロスドメインリクエスト3. Baidu検索をシミュレー...
チャンクファイブフリータイプファミリーCuprum JAH I フリーフォントイェセヴァブークレフィ...
1. .jpg ではなく .gif を使用します。GIF は JPG に比べてサイズが小さくなります...
tomcat サーバーの構成誰もが Web について学習するときに、自分のツール用に Tomcat ...
フィルター属性は要素の視覚効果を定義しますぼかし画像にガウスぼかしを適用します。 「半径」の値は、ガ...
目次1. 効果図(複数列) 2. 通常セレクター: mode = selector、複数列セレクター...
目次概要1. 依存性注入2. Angularの依存性注入フレームワーク概要依存性注入: デザインパタ...
まず、いくつかの概念を明確にします。 JDBC: Javaデータベース接続、Oricalによって規定...
目次序文文章1. グローバル登録2. 部分登録3. フック機能とパラメータ設定4. 柔軟な使い方(1...
<br />国内のウェブサイトが本格的に普及し、ユーザーエクスペリエンスに重点が置かれる...
今回は、私自身の開発経験を踏まえて、以下の観点で関連内容を解説します。ページからコンポーネントにデー...