CSSのbeforeで改行する方法を現役エンジニアが解説【初心者向け】
初心者向けにCSSのbeforeで改行する方法について解説しています。beforeはCSS2で追加された擬似要素で、選択した要素の最初の子要素として機能します。今回はbeforeで追加するcontentの内容を改行する方法について解説します。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
CSSのbeforeで改行する方法について解説します。
そもそもCSSについてよく分からないという方は、CSSの書き方について解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプWebデザイン講座のCSSカリキュラムをもとに執筆しています。
今回は、CSSに関する内容だね!
どういう内容でしょうか?
CSSのbeforeで改行する方法について詳しく説明していくね!
お願いします!
beforeで改行する書き方
::beforeという擬似要素はとても便利でよく使用するのではないかなと思いますが、ここでは小技的な「改行させる」方法をご紹介します。
例えば、こんな感じでハンコのようなリストアイコンをテキストで作る場合、どうしますか?
::before要素に、font-sizeとwidthとheightを計算して書いて、contentに書いたテキストの要素をはみ出させずに改行させるようにして、、、
としても良いのですが、もしかしたらブラウザーによってはうまく改行されず、変なことになってしまうかも、、という恐怖に怯えることになりそうです。(ですよね?)
そこで、「content内で改行させる」方法を使ってみましょう。
たったの二つ、ポイントを押さえるだけでオッケーです。
content:"特別A価格"; white-space: pre;
このように書きます。
contentの【A】これが、white-space: pre;を与えられることによって、改行となります。デフォルトでは、半角スペースが空くだけなので、white-space: pre;を忘れないようにしましょう。
また、Aは、普通のスラッシュ( / )ではなく「バックスラッシュ」を使用していますので、入力方法を確認するようにしましょう。
実際に書いてみよう
HTML
<ul> <li><span>りんご</span></li> <li><span>みかん</span></li> <li><span>バナナ</span></li> </ul>
CSS
li{ list-style: none; margin: 10px 0; } li span{ display: inline-block; line-height: 40px; vertical-align: top; } li::before{ /*改行するためのスタイル*/ content:"特別A価格"; white-space: pre; /*ハンコのスタイル*/ font-size: 16px; color: red; padding: 4px; margin-right: 5px; display: inline-block; line-height: 1em; border: red 1px solid; border-radius: 50%; }
この記事を監修してくれた方
和田 祥子(わださちこ) テニスと音楽とビールが好きです。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもオリジナルWebサイトを公開できるオンラインブートキャンプWebデザイン講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。