CSS疑似要素(::beforeや::after)のcontent内で改行したり半角スペースを複数入力する方法

疑似要素を使うとタグの数をかなり減らせますし、CSSのみでツールチップの実装もできます。
ただ、疑似要素のcontent内では、普通に<br>タグでは改行できません。
今回は疑似要素内で改行する方法についてまとめておきます。
\Aを使用して改行する
まずは、改行したい位置で「\A」を入力します。
そのあとwhite-space: pre-wrap;を指定すると改行されます。
.tooltip::before {
content: '説明文を\A改行します';
white-space: pre-wrap;
}「\A」は改行を示すコードで、「pre-wrap」を指定するとHTML上の改行や半角スペースがブラウザでの表示にそのまま反映されるようになり、その影響で改行コードを認識して改行してくれるようになります。
「white-space: pre;」でも改行されますが、これだと「\A」を入力しないと折り返されなくなってしまい、CSSやブラウザ幅によっては表示が崩れてしまう可能性があります。
pre-wrapはpreと同様に改行コードを判定しつつ、横幅に応じて自動折り返しもしてくれます。
小文字でも問題なく使える
大文字で紹介されていることが多いですが「\a」のように小文字でも機能します。
ちなみにcontent内では「\r」や「\n」「\r\n」の改行コードは使えなく、あくまで「\a」しか反映されないので注意が必要です。
半角スペースを複数入力する
content内では2つ以上半角スペースを入力しても1つ分しか隙間が空きません。
これも「white-space: pre-wrap;」や「pre」を指定すると、半角スペースを入力した分だけ隙間が空くようになります。
「\00a0」で半角スペースを入力する
「white-space」の指定をしなくても「\00a0」を入力すると半角スペースとして認識されて複数入力してもちゃんと隙間が空くようになります。
.tooltip::before {
content: '説明文に\00a0\00a0\00a0半角スペースを複数入力します';
}ちなみに英語を入力しようとすると、コードのすぐあとにアルファベットが続く影響で表示がおかしくなってしまうので、コードのあとにスペースを入れて区切りをつけるようにします。
.tooltip::before {
content: 'tooltip\00a0\00a0\00a0 text';
}
Google Maps APIでピンのアクティブ時にピン画像を変える方法
SourceTreeを開くと「’git status’ failed with code 69:’」というポップアップが出てくる場合の解決方法
JavaScriptで日付をコピーして計算すると、コピー元の日付も変わってしまう場合の対処法
HTMLが書ければすぐ習得できるテンプレートエンジン「EJS」の基本的な書き方
Vue CLIで共通のSCSSファイルを読み込む方法
コーディング時のclass名の省略はどこまでして良いのか?「img / btn / ttl / desc / thumb」
HTMLタグの入力をラクにするスニペット集
さくらのレンタルサーバで.htaccessが原因で500エラーになってしまう場合のチェックリスト
Visual Studio Codeで英単語のスペルチェックをしてくれる拡張機能「Code Spell Checker」
思考したり情報整理したい時はMarkdown記法で文章を書き出そう!!Webデザイナーの情報整理術
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
AirPodsで片耳を外しても再生が止まらないようにする方法
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法