【2026年7月最新】HTMLで改行する方法完全ガイド|brタグ・pタグ・CSS改行制御の使い分けとClaude Code活用
この記事の内容
HTMLを書き始めた最初の壁が「改行が効かない」問題です。Wordやメモ帳でEnterキーを押すと改行されるのに、HTMLでは何度Enterを押しても1行のテキストになってしまう——このギャップで最初につまずく方がほとんどです。
この記事では、HTMLの改行を完全に理解するために必要な知識を整理します。<br>タグの正しい書き方・<p>タグとの使い分け・CSSを使った改行制御・スマホでの崩れ対策・Claude Codeを使った自動修正まで、一気に解説します。
01 WHY NO ENTER HTMLでEnterキーが効かない理由と改行の基本 HTMLのホワイトスペース処理ルールを理解する
HTMLエディタやメモ帳でHTMLを書くとき、Enterキーを押して改行を入れても、ブラウザ上では改行として表示されません。これはHTMLがホワイトスペース(空白・改行・タブ)を「1つのスペース」に圧縮するという仕様があるためです。
📚 用語解説
ホワイトスペース処理:HTMLドキュメントにおいて、連続するスペース・タブ・改行文字(\n)をすべて「1つのスペース」に置き換えるブラウザの動作。これによりHTMLコードの見た目のレイアウト(インデントや複数行)は無視され、要素の構造のみが意味を持つ。CSSのwhite-spaceプロパティを変更するとこの挙動を変えられる。
<!-- HTMLのソースコード(Enterキーで改行している)--> <p>これは1行目です 2行目はここ 3行目はここ</p> <!-- ↑ ブラウザ上での表示 ↓ --> これは1行目です 2行目はここ 3行目はここ (改行なし・スペース1つに圧縮) <!-- 複数スペースも1つに圧縮 --> <p>こんに ちは</p> → ブラウザ表示: こんに ちは(スペースが1つに)
HTMLで改行を表示したい場合は、以下の3つの方法を使います。
| 方法 | 特徴 | 主な用途 |
|---|---|---|
| <br>タグ | 行内で強制改行する | 詩・住所・署名など意味のある改行 |
| <p>タグ | 段落として区切る(上下にマージン) | 文章の段落区切り |
| CSS white-space | 空白・改行のレンダリングを変更 | コードブロック・テキストエリア代替 |
02 BR TAG brタグの正しい使い方と書き方の違い HTML5とXHTMLの書き方の違い、brが適切な場面
<br>(line break)タグは、テキストの流れの中で強制的に改行を挿入するインライン要素です。他のHTMLタグと違い、開始タグだけで使います(終了タグ不要)。
📚 用語解説
<br>タグ:HTML Line Break要素。テキスト内に改行を挿入する空要素(コンテンツを持たない)。開始タグだけで使い、終了タグはない。HTML5では<br>と書くが、XHTMLの書き方(<br />)もHTML5で使えるため、どちらかに統一していれば問題ない。Enterキーの「改行」ではなく、「詩の行・住所・署名」など意味的に改行が必要な場面に使う。
<!-- HTML5の書き方(推奨) --> <p>お問い合わせ先:<br> 株式会社GENAI<br> 東京都千代田区神田須田町1-1<br> Tel: 03-1234-5678</p> <!-- XHTMLの書き方(HTML5でも使用可) --> <p>お問い合わせ先:<br /> 株式会社GENAI<br /> 東京都千代田区神田須田町1-1<br /> Tel: 03-1234-5678</p> <!-- 誤った使い方(終了タグは不要) --> <p>テキスト<br></br>テキスト</p> ← 不正確だが多くのブラウザは許容
HTML5では <br> と書くのが推奨です(末尾のスラッシュなし)。XHTMLスタイルの <br /> は HTML5 でも使用でき、どちらでも動作します。チームや既存コードの規約に合わせましょう。Reactなどのフレームワークのテンプレートでは <br /> が一般的です(JSXはXMLベースのため自己終結タグが必要)。
03 ANTI-PATTERN 【NG】brの連続使用アンチパターンと正しい代替 br連打は保守性が下がりスマホで崩れる。CSSのmarginが正解
<br>を複数並べてスペースを作ることは、HTML仕様では推奨されていません。スマホと PC でフォントサイズや行高が異なるため、PCで見た目が良くてもスマホで間隔がズレます。また、後からデザインを変えたいときにHTML全体を修正する必要があり保守性が下がります。CSSのmarginまたはpaddingで余白を制御するのが正しいアプローチです。
<!-- NG: <br>を連続して余白を作る(アンチパターン) -->
<p>見出しの後に余白が欲しい</p>
<br>
<br>
<br>
<p>ここに次のコンテンツ</p>
<!-- OK: CSSのmarginで余白を制御する -->
<style>
.section-gap {
margin-bottom: 48px; /* 余白はCSSで管理 */
}
</style>
<p class="section-gap">見出しの後に余白が欲しい</p>
<p>ここに次のコンテンツ</p>
| 方法 | 可読性 | レスポンシブ対応 | 保守性 | 推奨度 |
|---|---|---|---|---|
| <br>連続 | HTML上で直感的 | 崩れやすい(px固定) | 変更に弱い | ❌ NG |
| CSS margin/padding | HTML+CSSを分離 | メディアクエリで制御可 | 一箇所の修正で全体反映 | ✔ 推奨 |
<!-- 実務での正しい余白の付け方 -->
<!-- 段落間の余白 -->
<style>
p {
margin-bottom: 1.5em; /* 1em = フォントサイズ分の余白 */
}
/* スマホでは少し余白を減らす */
@media (max-width: 768px) {
p {
margin-bottom: 1em;
}
}
</style>
<!-- 特定の要素の後だけ余白を増やす -->
<style>
.section-title {
margin-top: 48px;
margin-bottom: 24px;
}
</style>
<h2 class="section-title">セクションタイトル</h2>
<p>本文テキスト</p>
04 P VS BR pタグで段落を作る|brとpの使い分け基準 「段落の区切り」と「行内の改行」の明確な使い分け
<p>(paragraph)タグは、テキストの段落を定義するブロックレベル要素です。<br>が「行内の改行」であるのに対し、<p>は「意味的な段落の区切り」を表します。ブラウザのデフォルトスタイルでは、<p>タグ間には上下のマージン(余白)が自動的に入ります。
📚 用語解説
ブロックレベル要素 vs インライン要素:ブロックレベル要素(p, div, h1-h6, section等)は前後で強制的に改行され、幅が親要素いっぱいに広がる。インライン要素(span, a, strong, br等)はテキストの流れの中に配置され、前後で改行されない。<br>はインライン要素だが特殊で、直後に改行を挿入する空要素。<p>はブロックレベル要素で、段落全体が一つのブロックになる。
<!-- pタグの基本的な使い方 --> <p>これは第1段落です。文章の塊として段落を表します。 段落内でEnterキーを押してもスペースになりますが、 長い文章は自動的に折り返されます。</p> <p>これは第2段落です。前の段落との間にブラウザが 自動的にマージン(余白)を入れます。</p> <!-- pタグ内でbrを使う(段落内の強制改行) --> <p>東京都千代田区神田須田町1-1<br> 株式会社GENAI<br> Tel: 03-1234-5678</p>
(話題が変わる・長い文章の塊)
前後にマージンあり
セマンティックな区切り
(住所・詩・署名・項目の並び)
行内で改行のみ
マージンなし
brの連続はNG
paddingやmarginで
| 判断ポイント | <br>を使う | <p>を使う |
|---|---|---|
| 前後の余白 | 不要(改行のみ) | 必要(段落間スペース) |
| 意味的な区切り | 詩・住所・署名の行 | 文章のトピック転換 |
| CSSでの余白制御 | 行の高さ(line-height)で調整 | margin-top/bottomで調整 |
| SEO・アクセシビリティ | レイアウト目的に使わない | 段落として正しくマークアップ |
05 CSS CONTROL CSSで改行を制御する:white-space・word-break・overflow-wrap CSSプロパティで改行の挙動を細かく制御する方法
HTMLのタグで改行するのではなく、CSSプロパティで改行の挙動そのものを制御する方法があります。特にコードブロックの表示や長いURLの折り返しなどで必須の知識です。
5-1. white-space プロパティ
📚 用語解説
white-space プロパティ:HTMLエレメント内のホワイトスペース(空白・改行・タブ)をどう扱うかを指定するCSSプロパティ。デフォルトのnormalは複数のスペースを1つに圧縮して改行を無視する。preはHTMLソースの改行とスペースをそのまま表示(<pre>タグと同等)。pre-wrapはpreと同様だが自動折り返しあり。nowrapは改行なしの1行表示。
/* white-space の主要な値 */
/* normal(デフォルト): 空白を圧縮、必要に応じて折り返し */
.normal-text {
white-space: normal;
}
/* pre: 空白・改行をそのまま表示(Enterも有効に)*/
.preformatted {
white-space: pre;
font-family: monospace;
}
/* pre-wrap: preと同様だが、長い行は自動折り返し */
.pre-wrap-text {
white-space: pre-wrap;
/* 長いテキストも画面からはみ出さない */
}
/* nowrap: 改行せずに1行で表示(はみ出す場合あり)*/
.no-wrap-text {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis; /* ... で切り詰め */
}
/* break-spaces: pre-wrapと似るがスペースも折り返し可能 */
.break-spaces {
white-space: break-spaces;
}
5-2. word-break と overflow-wrap
/* 長い単語・URLの折り返し制御 */
/* word-break: normal(デフォルト): 単語の途中では折り返さない */
.normal-word-break {
word-break: normal;
}
/* word-break: break-all: どこでも折り返す(英単語も途中で折り返す)*/
.break-all {
word-break: break-all;
/* 英語テキストには不自然に見えることがある */
}
/* word-break: keep-all: 日本語でも単語途中での折り返しを防ぐ */
.keep-all {
word-break: keep-all;
/* 日本語でスペース以外の場所では折り返さない */
}
/* overflow-wrap: break-word: 単語が長すぎるときだけ途中で折り返す(推奨)*/
.break-word {
overflow-wrap: break-word;
/* URLや長い英語単語がはみ出すときに折り返す */
}
/* URLなど長い文字列のはみ出し対策(よく使う組み合わせ)*/
.url-safe {
word-break: break-all;
overflow-wrap: break-word;
}
日本語のコンテンツで一般的に使う組み合わせは: overflow-wrap: break-word(長い英単語・URLの折り返し)+ word-break: normal(日本語は通常の場所で折り返し)。本文テキストにはこの組み合わせが安全です。コードブロックはwhite-space: pre-wrapをよく使います。
5-3. 実務でよく使うパターン
/* コードブロックの表示(プリフォーマットテキスト)*/
pre, code {
white-space: pre-wrap; /* 折り返し可能なコード表示 */
overflow-wrap: break-word;
font-family: 'Consolas', 'Courier New', monospace;
background: #1e1e1e;
color: #d4d4d4;
padding: 16px;
border-radius: 8px;
overflow-x: auto; /* 長い行はスクロール */
}
/* 長いURLや文字列の折り返し */
a, .url-text {
word-break: break-all;
}
/* テキストを1行に収めて「...」で切り詰める */
.truncate {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 200px; /* 最大幅を指定 */
}
/* 複数行で「...」切り詰め(3行まで表示)*/
.line-clamp-3 {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
06 NO BREAK 改行させない方法:nowrap・wbrタグ 意図しない改行を防ぐCSSとwbrタグの使い方
「このフレーズは改行して欲しくない」「ここだけは途中で切れないようにしたい」という場面があります。白空間処理とwbrタグで制御できます。
<!-- white-space: nowrapで改行を防ぐ -->
<style>
.no-break {
white-space: nowrap;
}
</style>
<!-- 「株式会社」で改行されないようにする -->
<span class="no-break">株式会社GENAI</span>
<!-- もしくはインラインスタイルで -->
<span style="white-space: nowrap;">050-1234-5678</span>
<!-- 電話番号・郵便番号が途中で折り返されるのを防ぐ -->
<!-- (ノーブレークスペース)でも改行を防げる -->
株式会社 GENAI
<!-- ただしスペースの見た目が変わるため要注意 -->
📚 用語解説
<wbr>タグ(Word Break Opportunity):HTML5で正式採用されたタグ。「この位置での改行を許可する」というヒントをブラウザに与える。URLのような長い文字列で、特定の位置でだけ折り返しを許可したい場合に使う。wbrを入れた位置が折り返されるかどうかは画面幅次第(折り返しの優先候補を指定するだけで強制ではない)。
<!-- <wbr>で長いURLに折り返し箇所のヒントを与える --> <p>詳細はこちら:<br> <!-- スラッシュの後をwbrにすると、そこで折り返されやすくなる --> <!-- 長い日本語フレーズで特定位置だけ折り返しを許可 --> <p>人工知能自動化<wbr>推進委員会<wbr>第三回<wbr>定期会議</p> <!-- 画面が狭いときだけ自然な位置で折り返される -->
07 RESPONSIVE スマホ表示での改行崩れとレスポンシブ対策 PCで綺麗でもスマホで崩れる原因と対処パターン
HTMLの改行問題でよくある悩みの一つが「PCでは綺麗に見えるのにスマホで崩れる」問題です。原因はほぼ決まっています。
/* スマホ対応の改行まわりのCSS基本セット */
/* 1. 全体にbox-sizingを設定(余白計算を安定させる)*/
*, *::before, *::after {
box-sizing: border-box;
}
/* 2. 画像・動画が親要素をはみ出ないように */
img, video, iframe {
max-width: 100%;
height: auto;
}
/* 3. 長い文字列の折り返し */
p, td, th, li, a {
overflow-wrap: break-word;
word-break: break-word;
}
/* 4. コードブロックのスクロール対応 */
pre, code {
overflow-x: auto;
white-space: pre-wrap; /* 折り返し可能に */
}
/* 5. メディアクエリでスマホのフォントサイズを調整 */
@media (max-width: 768px) {
body {
font-size: 15px;
line-height: 1.7;
}
h2 {
font-size: 1.4rem;
}
}
08 AI ASSIST Claude CodeでHTML改行問題を自動修正する brの連続使用・レスポンシブ崩れを自動診断して修正コードを得る
HTMLの改行問題は「なぜ改行されないのか」「どこでスマホが崩れているのか」を特定するのが最も時間のかかる部分です。Claude CodeにHTMLのコードを貼り付けて「改行が崩れているところを直して」と指示するだけで、問題箇所の特定と修正コードが即座に返ってきます。
| ユースケース | Claude Codeへの指示例 |
|---|---|
| brの連続使用を修正 | 「以下のHTMLでbrタグを連続使用してスペースを作っている箇所を、CSSのmarginに書き換えて。[HTMLを貼り付け]」 |
| スマホ崩れの対処 | 「スマホで横スクロールが発生するHTMLです。overflow-wrapとmax-widthを使ったレスポンシブ対応のCSSを追加して。[HTMLを貼り付け]」 |
| 白空間の制御 | 「以下のdivにHTMLのソースコードをそのまま表示したい(改行もスペースも維持して)。適切なCSS white-spaceプロパティを追加して。[コードを貼り付け]」 |
| 改行位置の調整 | 「この日本語テキストをPCでは1行に、スマホでは2行に表示したい。<wbr>か::afterを使って折り返し位置を指定する方法を教えて」 |
「スマホで崩れる」
「brが効かない」
問題部分を
コピーして指示
CSSと修正済みHTML
が即座に得られる
PC/スマホ両方で
表示を確認
09 CONCLUSION まとめ:HTML改行の正しい知識チェックリスト brとp・CSSとwbr・レスポンシブの3点セット
WebサイトのHTML/CSSをAIで効率的に制作・修正したい方へ
HTMLの改行問題に限らず、Webサイトのレイアウト崩れ・レスポンシブ対応・SEO改善は、Claude Codeを活用することで対応時間を大幅に削減できます。
AI鬼管理では、WebサイトのAI活用・業務効率化の設計・実装支援を行っています。
NEXT STEP
この記事の内容を、あなたのビジネスで
実践してみませんか?
AI活用を自社で回せるようになりたい方へ
AI鬼管理
Claude Code・Cowork導入支援から業務設計・社内浸透まで実践ベースで伴走。「自社で回せる組織」を90日で作る経営者向けトレーニング。
よくある質問
Q. HTMLで改行するにはどうすればいいですか?一番シンプルな方法は?
A. 行内で強制改行したい場合は <br> タグを使います(<p>タグや他のテキスト内に <br> と書くだけ)。段落を分けたい場合は <p> タグで段落を作ります(<p>テキスト</p> を2つ書けば間に余白が入ります)。「Enterで改行したい」のが目的の場合は、テキストエリアのような入力UIではなくフォームを使う必要があります。HTMLは表示のためのマークアップ言語なので、見た目の改行は必ずタグかCSSで指定します。
Q. <br>と<br />はどちらが正しいですか?
A. HTML5では <br>(スラッシュなし)が推奨の書き方ですが、XHTML互換の <br /> も HTML5 で動作します。どちらも正しく動くため、既存のコードやチームの規約に合わせて使えばOKです。ReactなどのJSXを使う場合は <br /> が必要です(JSXはXMLベースで自己終結タグが必須)。
Q. <br>を複数並べてスペースを作ってはいけないのはなぜですか?
A. 3つの理由があります。①PCとスマホでline-heightが異なるため、PCでは良い間隔でもスマホでズレることが多い。②CSSで一箇所を変えたいときにHTMLの <br> を全部探して修正する必要がありメンテナンス性が下がる。③HTMLの意味(セマンティクス)として <br> は「意味のある改行」を表すものであり、余白はCSSの責任範囲です。代わりに CSS の margin-top や margin-bottom を使いましょう。
Q. CSSでwhite-space: preを使うと何が変わりますか?
A. white-space: pre を指定すると、HTMLソースコード内の空白・改行・タブが全てそのままブラウザに表示されます。つまり「Enterキーを押した改行」「連続スペース」がHTMLソースの通りに表示されます。通常のHTMLではこれらが1つのスペースに圧縮されますが、preを使うことでコードブロックや整形済みテキストをそのまま見せられます。ただし長い行でも自動折り返しされないため、white-space: pre-wrapを使う方が実用的です。
Q. スマホで改行が崩れる場合、まず何を確認すればいいですか?
A. 4点確認してください。①overflow-wrap: break-wordがCSSに設定されているか(長いURLや英単語がはみ出す原因)。②コンテナの幅がwidth: 100%かmax-width+widthの組み合わせになっているか(固定幅は崩れの原因)。③<br>を連続使用していないか(PCとスマホで行高が違うため間隔がズレる)。④画像にmax-width: 100%が設定されているか(画像がはみ出す場合)。これらを確認するだけで多くの改行崩れは解決します。
Q. Claude CodeにHTMLの改行問題を相談するとき、どう伝えると良いですか?
A. 問題が起きているHTMLコード全体(またはその部分)と、「何がどう崩れているか」の説明(例: スマホで横スクロールが出る、<br>を複数使って余白を作っているのを修正したい等)をセットで伝えるのが最も効果的です。「PCでは正しく表示されるがスマホで〇〇が崩れる」のように症状を具体的に書くと、原因の特定と修正コードが一発で返ってくる可能性が高くなります。
Claude Codeで業務自動化を90日で叩き込む
経営者向けの伴走型パーソナルトレーニング
Claude Code を業務に落とし込む
専門研修コース一覧
受講者本人の業務を題材に、「使いこなせる」状態になるまで伴走する研修プログラム。1対1特化型・ハンズオン・法人講座の3コースを展開中。業務特化・実装まで踏み込むタイプのClaude Code研修です。
研修コース一覧を見る →AI鬼管理へのお問い合わせ
この記事を読んで気になった方へ。
AI鬼管理の専門スタッフが、御社に最適な
業務自動化プランを無料でご提案します。




