174

インライン CSS (つまり属性の CSS) を使用して HTML メール署名を作成していますが、疑似要素とstyleを使用できるかどうか知りたいです。:before:after

もしそうなら、インラインCSSでこのようなものをどのように実装しますか?

td { text-align: justify; }
td:after { content: ""; display: inline-block; width: 100%; }
4

10 に答える 10

135

疑似要素にインライン スタイルを指定することはできません。

これは、疑似クラス (この他の質問に対する私の回答を参照) のような疑似要素が、HTML では表現できないドキュメント ツリーの抽象化としてセレクターを使用して CSS で定義されているためです。style一方、インライン属性は、特定の要素の HTML 内で指定されます。

インライン スタイルは HTML でのみ発生する可能性があるため、それらが定義されている HTML 要素にのみ適用され、それが生成する疑似要素には適用されません。

余談ですが、この点における疑似要素と疑似クラスの主な違いは、デフォルトで継承されるプロパティは:before生成要素との間で継承される:afterのに対し、疑似クラス スタイルはまったく適用されないことです。あなたの場合、たとえば、要素text-align: justifyのインライン スタイル属性を配置するtdと、 に継承されtd:afterます。td:after注意点は、インライン スタイル属性で宣言できないことです。スタイルシートで行う必要があります。

于 2013-01-03T15:22:50.990 に答える
9

David Thomasが言ったように、inline-css の疑似クラスまたは疑似要素をターゲットにすることはできません。詳細については、疑似クラスに関するBoltClockによるこの回答を参照してください

いいえ。style 属性は、特定の HTML 要素のスタイル プロパティのみを定義します。疑似クラスはセレクターのファミリーのメンバーであり、属性では発生しません.....

疑似要素についても同じように書くことができます

いいえ。style 属性は、特定の HTML 要素のスタイル プロパティのみを定義します。疑似クラスと疑似要素は、セレクターのファミリーのメンバーであり、属性では発生しないため、インラインでスタイルを設定できません。

于 2013-01-03T15:17:03.253 に答える
4

はい、可能です。後または前に追加する要素にインライン スタイルを追加するだけです。例

 <style>
     .horizontalProgress:after { width: 45%; }
 </style><!-- Change Value from Here -->

 <div class="horizontalProgress"></div>
于 2016-09-20T06:50:13.383 に答える