Vlastnost CSS line-break
definuje, jak striktně vynutit pravidla pro zalamování zalamování textu na nových řádcích, zejména při práci se symboly a interpunkcemi v čínských, japonských nebo korejských (CJK) systémech psaní. Je obsažen ve specifikaci CSS Textový modul úrovně 3, která je aktuálně v Draft editoru.
.element ( line-break: strict; )
Ukázka
Syntax
line-break: auto | loose | normal | strict | anywhere;
- Počáteční:
auto
- Platí pro: všechny prvky
- Zděděno: ano
- Vypočítaná hodnota: jak je uvedeno
- Typ animace: diskrétní
Hodnoty
/* Keyword values */ line-break: auto; line-break: loose; line-break: normal; line-break: strict; line-break: anywhere; /* Global values */ line-break: inherit; line-break: initial; line-break: unset;
auto
: Toto umožňuje prohlížeči rozhodnout, jak implementuje zalomení řádků. Každý prohlížeč se může lišit podle svých kritérií na základě faktorů, včetně délky řádku.loose
: Toto je nejlehčí vynucování pravidel prolomení řádku. Specifikace uvádí krátké řádky textu, například ty, které bychom mohli vidět v novinách, jako příklad, kde by tato hodnota mohla být použita.normal
: Tím se rozdělí řádky textu na základě „nejběžnější“ sady pravidel. (Všimněte si, že neexistuje žádná definice toho, co je nejběžnější sada pravidel nebo co by mohla obsahovat.)strict
: Tím se vynutí nejpřísnější sada pravidel pro zalomení řádků.anywhere
: Tato hodnota povoluje možnosti měkkého zalamování, které umožňují zlomení textu v mezerách nebo interpunkci namísto samotné hranice slova. Je ideální pro jazyky, které k oddělení slov nepoužívají mezery ani interpunkci. Specifikace říká, že CSS nedefinuje možnosti měkkého zalomení a tato hodnota je rozpozná a využije k použití pravidel pro zalomení řádku. Specifikace popisuje chování zalamování textu jako to, co obvykle vidíme v terminálu.
Specifikace také poznamenává, že anywhere
hodnota umožňuje zachovat prázdné znaky na konci řádku, aby se zalamovaly na další řádek, když se použijí s white-space
vlastností nastavenou na break-spaces
.
Chování hodnoty v různých jazycích
Jak si dokážete představit, různé jazyky mají různé předvolby, pokud jde o to, jak je text rozdělen na nové řádky. Ve všech jazycích neexistuje standardizovaná konvence. To ponechává na prohlížečích, aby zjistily a dodržovaly „správná“ pravidla pro konkrétní jazyk. Specifikace však uvádí několik požadavků na určení, zda je line-break
v určitých situacích povoleno lámání řádků na různých úrovních přísnosti. Tady je představíme.
Situace | normal | loose | strict |
---|---|---|---|
Přestávky před japonskou malou kanou nebo prodlouženou zvukovou značkou Katakana-Hiragana, tj. Znak z třídy prolomení řádku Unicode CJ | ❌ | ✅ | ✅ |
Přestávky před určitými znaky pomlček CJK: 〜 U + 301C, ゠ U + 30A0 | ❌ | ✅ pokud je systém psaní čínský nebo japonský | Povoleno, pokud je systém psaní čínský nebo japonský |
Přestávky před určitými znaky pomlček CJK: 〜 U + 301C, ゠ U + 30A0 | ❌ | ✅ pokud předchozí znak patří do třídy prolomení řádku Unicode ID (včetně případů, kdy je s předchozím znakem zacházeno jako ID kvůliword-break: break-all) | ❌ |
Přestávky před iteračními značkami: 々 U + 3005, 〻 U + 303B, ゝ U + 309D, ゞ U + 309E, ヽ U + 30FD, ヾ U + 30FE | ❌ | ✅ | ❌ |
Přestávky mezi neoddělitelnými znaky (například ‥ U + 2025,… U + 2026), tj. Znaky z třídy Unicode pro dělení řádků IN | ❌ | ✅ | ❌ |
Přestávky před určitými středovými interpunkčními znaménky: ・ U + 30FB, : U + FF1A, ; U + FF1B, ・ U + FF65,‼ U + 203C,⁇ U + 2047,⁈ U + 2048,⁉ U + 2049,! U + FF01,? U + FF1F | ❌ | ✅ | ❌ |
Přestávky před přípon: Znaky Unicode linie zlomu třídy PO a majetku východoasijské šířka Ambiguous , Fullwidth nebo Wide . | ❌ | ✅ | ❌ |
Přestávky po předponami: Znaky Unicode linie zlomu třídy PR a majetku východoasijské šířka Ambiguous , Fullwidth nebo Wide . | ❌ | ✅ | ❌ |
TJ | Okraj | Firefox | Chrome | Safari | Opera |
---|---|---|---|---|---|
6+ | 14+ | 69+ | Všechno | Všechno | 15+ |
Android Chrome | Android Firefox | Prohlížeč Android | iOS Safari | Opera Mobile |
---|---|---|---|---|
85+ | Ne | 81+ | Všechno | 59+ |
Související vlastnosti
Almanach 25. dubna 2020přetečení bloku
Robin Rendle