開発者は、通常、Webページでテキストを折り返すことを好みます。折り返しにより、何らかの方法でテキストが制約され、デザイン上の問題が回避されます。テキストの折り返しは、横方向のスクロールも防ぐことができます。しかし、長さに関係なく、テキストブロックを同じ行に残したい場合があります。CSSのwhite-space
プロパティを使用して、特定の要素の改行とテキスの折り返しを防ぐことができます。
このチュートリアルでは、同じテキストブロックを4つの異なる方法でスタイル設定します。1つ目は改行を使用し、後の3つは改行を使用せずに設定します。
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
これにより、テキストを折り返すか、折り返さないかについて、いくつかのオプションが提供されます。
このチュートリアルを実行するには、次のものが必要です。
nano
またはVisual Studio Codeなどのお好みのコードエディターこのステップでは、3つの異なるクラスを持つスタイルシートを作成します。それぞれ異なる方法で改行を処理します。1つ目は、デフォルトの方法でテキストを改行し、2つ目、3つ目は、テキストに強制的に、改行を作成して分割しないようにします。
まず、nano
またはお好みのエディターを使用して、main.css
という新しいファイルを作成して開きます。
- nano main.css
次のコンテンツを追加します。これはwhite-space
を含むいくつかのプロパティを使用する3つのCSSクラスを導入します。
.sammy-wrap {
border-radius: 6px;
background-color: aliceblue;
border: 2px dashed gray;
max-width: 70%;
padding: 1em;
margin-bottom: .4em;
}
.sammy-nowrap-1 {
border-radius: 6px;
background-color: aliceblue;
border: 2px dashed gray;
max-width: 70%;
padding: 1em;
margin-bottom: .4em;
white-space: nowrap;
}
.sammy-nowrap-2 {
border-radius: 6px;
background-color: aliceblue;
border: 2px dashed gray;
max-width: 70%;
padding: 1em;
margin-bottom: .4em;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
1つ目のクラスは.sammy-wra
pです。これはborder-radius
、background-color
、border max-width
、padding
、およびmargin-bottom
を含む6つの一般的なCSSプロパティを定義します。このクラスは、ビジュアルボックスを作成しますが、特別な折り返しプロパティを定義しません。これは、デフォルトの方法で改行することを意味します。
2つ目のクラスは.sammy-nowrap-1
です。.sammy-rap
と同じボックスを定義しますが、ここでは別のプロパティであるwhite-space
を追加します。white-space
プロパティにはさまざまなオプションがあり、これらはすべて、指定された要素内の空白の処理方法を定義します。ここでは、white-space
をnowrap
に設定しました。これにより、すべての改行が防止されます。
3つ目のクラスは.sammy-nowrap-2
です。white-space
に、overflow
とtext-overflow
の2つの追加プロパティを加えます。overflow
プロパティは、スクロール可能なオーバーフロー
を処理します。これは、要素内のコンテンツが要素の領域からはみ出している場合に行われます。overflow
プロパティにより、そのコンテンツをスクロール可能、表示可能、または非表示にすることができます。overflow
をhidden
に設定し、text-overflow
プロパティを使用して、さらにカスタマイズを加えています。text-overflow
は、追加のテキストが非表示の状態であることをユーザーに通知するのに役立ちます。これをellipsis
に設定したので、行が切り取られたり、ボックスを超えたりすることはありません。CSSは、オーバーフローを非表示にし、隠れたコンテンツを...
で通知します。
ファイルを保存して閉じます。
これでスタイルシートができたので、サンプルテキストを含む簡単なHTMLファイルを作成する準備が整いました。次に、ブラウザに Webページをロードし、CSSがどのように改行を防ぐことができるかを調べます。
定義されたCSSクラスを使用して、いくつかのサンプルテキストに適用できます。
お好みのエディターで、index.html
というファイルを作成して開きます。必ずmain.css
と同じフォルダに配置してください。
- nano index.html
次のコンテンツを追加します。これにより、main.css
がstylesheet
と関連づけられ、サンプルテキストブロックにクラスが適用されます。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>How To Prevent Line Breaks with CSS</title>
<link href="main.css" rel="stylesheet">
</head>
<body>
<p class="sammy-wrap" > Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.</p>
<p class="sammy-nowrap-1"> Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.</p>
<p class="sammy-nowrap-2"> Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.</p>
<p class="sammy-wrap" > Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.</p>
</body>
</html>
1つ目のテキストブロックには標準の折り返しスタイルを割り当て、2つ目のブロックにはnowrap
スタイル、3つ目のブロックにはnowrap
にhidden
とellipsis
スタイルを付けて割り当てました。4つ目のサンプルにはsammy-wrap
を割り当てましたが、改行なしスペース(
)をHTMLに直接挿入することにより、デフォルトの折り返しを無効にしています。1度限りの状況で改行を防ぐ必要がある場合は、改行なしスペースを使用することですばやく解決できます。
Webブラウザでindex.html
を開き、結果を表示します。4つのテキストブロックは次のように表示されます。
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
Medusafish banded killifish convict blenny saury threadsail beluga sturgeon. Indian mul mora cisco masu salmon, roosterfish requiem shark longnose lancetfish bluefish red snapper Sacramento splittail giant danio.
CSSプロパティを正常にカスタマイズして、4つの異なる方法で改行を防いだり、許可することができました。
このチュートリアルでは、CSSを使用して、テキストブロックの改行を防ぎました。ボックス内にテキストのスタイルを設定し、white-space
プロパティを追加して、デフォルトのテキストの折り返しを無効にしました。テキストの折り返しと空白の処理の詳細については、white-space
のCSSプロパティ全体を調べることを検討してください。
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!