0
私は他のウェブサイトに埋め込まれることを目指すウィジェットを構築しています。私はall: initial
を見ていたので、iframeを使わないでください。 "このキーワードは、要素allに設定されたすべてのプロパティ値が要素の親から設定されているか、要素の親から継承されていることを完全に示すように指定しますが、以前の規則の方がより特異性が高い場合、ここ`all:initial`で指定されたスタイルでWebコンポーネントをリセットする方法は?
は、問題の例です。この時点で
/* external css */
#color {
color: red;
}
span {
text-decoration: underline;
}
span {
font-weight: bold !important;
}
/* my widget css */
/* reset */
widget,
widget * {
all: initial;
}
/* then my widget style */
widget span {
color: blue
}
<div id="div">
Lorem <span id="color">ipsum</span> dolor sit amet,
<widget>consectetur <span id="color">adipiscing</span> elit.</widget>
Phasellus eget velit sagittis.
</div>
ウィジェット内の唯一のスタイルは、テキスト装飾として持っている青で印刷された言葉「adipiscing」でなければなりませんそれはまだ赤で太字です
私はそれがちょっとした仕事のIDで接頭辞を試しましたが、!important
のルールでは試しませんでした。また、ウィジェットルールの一部またはそれぞれに!important
を追加しようとしましたが、状況が最悪になります。
外部CSSに触れることなくこの作業を行う方法はありますか?
'widget span'の'!important'は、 'span'タグ全体を対象とするものと戦うためのものです。可能な限り私はそれを取り除くだろう。 必須ではない '#color div'で'!important'を削除します。 –
cssの最初の部分のポイントは、それは私が制御しないCSSです、それはすでにCSSをウェブサイト上で表現するためにここにあります。私はそれを編集することはできませんし、そこに何があるのかも知りません。私はそこから個々のルールを狙うことはできません。また、 'widget span'を' widget span#color'に指定することはできません。なぜなら、すでに 'span#color'があることは分かりませんからです。 – Mathieu