web-dev-qa-db-ja.com

CSSを使用して、要素の前ではなく前に改行を挿入するにはどうすればよいですか?

例えば:

HTML:

The quick brown fox <span class="break">{BREAK}</span> jumps over the lazy dog.

これを表示したい:

クイックブラウンフォックス{BREAK}

怠惰な犬を飛び越えます。

私はdisplayプロパティを調べましたが、display:inline;はどこでも壊れず、display:blockは両側に切れ目を入れます。

:after疑似クラスも調べましたが、.break:after{content:"\000A";}はラインフィードではなくスペースとしてレンダリングされます。

13
Matt

デフォルトでは、HTML要素は空白を無視します。
変更すること

.break:after {
    content:"\000A";
    white-space: pre;
}
30
SLaks

http://jsfiddle.net/bMKrc/1/

html:

The quick brown fox <span class="break"></span> jumps over the lazy dog

CSS:

.break{
    display:block;
}

そして、それだけで十分です。 display:blockを指定すると、両側で破損する可能性がありますが、余分な行はありません。私のフィドルを見る。