特定のクラスに<br />
を追加したい。 :after擬似クラスを使用すると、単に<br />
がテキストとして表示されます。
この作品を作る方法はありますか?
IE8の内部にあるため、ブラウザの問題は問題になりません。私が行った場合
<span class="linebreakclass">cats are</span> brilliant
新しい行に「ブリリアント」を表示したい。
HTMLタグをレンダリングすることはできませんが、次のようにスタイルを設定できます。
.needs-space:after
{
content: " ";
display: block;
clear: both; /* if you need to break floating elements */
}
ここでの主な設定はdisplay: block;
これは、:afterDIV
内のコンテンツをレンダリングします。そして、この擬似要素はすべての最新のブラウザーでサポートされています。 IEを含む。これを言って、あなたはあなたのユーザーと彼らのブラウザに注意するべきです。
\A
エスケープシーケンスを使用できます。これは改行としてレンダリングされます。
.new-line:after {
white-space: pre-wrap;
content: "\A";
}
このメソッドは、content
プロパティの CCS 2.1仕様 で言及されています。
作成者は、
"\A"
プロパティの後にある文字列のいずれかに'content'
エスケープシーケンスを書き込むことにより、生成されたコンテンツに改行を含めることができます。この挿入された改行は、まだ'white-space'
プロパティの対象です。
悪化します-IE6では:afterクラスは動作しません(おそらく他のブラウザも同様です)。
ここで本当に必要なのは、間隔を空けるための要素の下部のマージンです。
単に
.myElement {
margin-bottom: 1em;
}