--- title: hyphens slug: Web/CSS/hyphens tags: - CSS - CSS Property - CSS テキスト - CSS プロパティ - CSS 文字列 - Reference translation_of: Web/CSS/hyphens ---
hyphens
は CSS のプロパティで、文字列を複数行にわたって折り返す際に、単語のハイフネーションを行う方法を指定します。ハイフネーションをまったく行わなかったり、手動で指定された位置で文字列のハイフネーションを行ったり、ブラウザーに適切な位置にハイフンを挿入させたりすることができます。
ハイフネーションの規則は言語に依存します。 HTML では言語は lang
属性で特定され、ブラウザーはこの属性が存在し、適切なハイフネーション辞書が利用できる場合にのみハイフネーションを行います。 XML では、 xml:lang
属性を使用する必要があります。
注: どのようにハイフネーションを行うかの規則は仕様書で明確に定義されていないため、厳密なハイフネーションの方式はブラウザーにより異なります。
/* キーワード値 */ hyphens: none; hyphens: manual; hyphens: auto; /* グローバル値 */ hyphens: inherit; hyphens: initial; hyphens: unset;
hyphens
プロパティは、以下に挙げたキーワード値のうちの一つで指定します。
none
manual
auto
メモ: auto
を設定したときの動作は、正しくタグ付けされた言語に依存して、適切なハイフネーション規則が選択されます。選択した言語で自動的なハイフネーションが適用されるようにすることを保証するために、 HTML の lang
属性を必ず指定してください。
文字列中で改行が可能な位置を手動で指定するために使用できる Unicode 文字は2つあります。
­
を使用してソフトハイフンを挿入することができます。HTML の {{htmlelement("wbr")}} 要素によって改行が行われた場合、ハイフンは挿入されません。
以下の例では3つのクラスを使用し、それぞれの hyphens
プロパティの設定を示します。
<dl> <dt><code>none</code>: no hyphen; overflow if needed</dt> <dd lang="en" class="none">An extreme­ly long English word</dd> <dt><code>manual</code>: hyphen only at &hyphen; or &shy; (if needed)</dt> <dd lang="en" class="manual">An extreme­ly long English word</dd> <dt><code>auto</code>: hyphens where the algorithm decides (if needed)</dt> <dd lang="en" class="auto">An extreme­ly long English word</dd> </dl>
dd { width: 55px; border: 1px solid black; } dd.none { -webkit-hyphens: none; -ms-hyphens: none; hyphens: none; } dd.manual { -webkit-hyphens: manual; -ms-hyphens: manual; hyphens: manual; } dd.auto { -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }
仕様書 | 策定状況 | コメント |
---|---|---|
{{SpecName("CSS3 Text", "#hyphens-property", "hyphens")}} | {{Spec2("CSS3 Text")}} | 初回定義。 |
{{cssinfo}}
{{Compat("css.properties.hyphens")}}
word-wrap
)