MENU

【CSS】疑似要素(::before・::after)のcontent内で改行を使うには?

目次

はじめに


福岡のホームページ制作・SEO対策の株式会社スゴヨクです。


CSSの疑似要素「::before」、「::after」を使用する際に、content内のテキストに改行を入れたくなったことはありませんか?

やり方を知らないと手間取ってしまいがちですが、知っていればあっという間に実装できますので、こちらになるべくわかりやすく書き残しておきたいと思います。



簡単2STEPです

その1:white-spaceプロパティを指定する

疑似要素のcontent内で改行を扱うには、white-space:pre;またはwhite-space:pre-wrap;を指定する必要があります。

white-spaceプロパティは、行の折り返し地点(要素のボックスの端)で自動的に改行をするか、空白が連続している場合に一つの空白にするか、改行を空白に置き換えるかなど、改行や空白の扱いを指定するものです。

→「white-spaceプロパティ」についてはこちらから

white-space:pre;は、改行や連続する空白をそのまま表示します。 ボックスの端では自動的な折り返しは行いません。

一方のwhite-space:pre-wrap;は、同じく改行や連続する空白をそのまま表示しますが、ボックスの端で自動的に折り返しを行います。



その2:改行したい位置に「\A」を入れる

white-spaceプロパティの指定をしたら、あとは改行したい箇所に「\A」(バックスラッシュ or 円マーク)を入れるだけで改行することができます。


HTML

疑似要素のcontent内で改行したい


CSS
.txt{
 content:"before\Aafter";
 white-space: pre;
}



おわりに


あっという間に実装できますので、ぜひ活用してみてください。


CSS疑似要素のcontent内に改行を入れたくて困っている方、勉強中の方の参考になれば幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次