CSSline-break属性与中⽂标点换⾏
关于标点符号把⽂字带着换⾏的问题解决⽅案
出现的问题
最近在弄⼀个介绍页⾯的时候遇到⼀个很巧的问题,在⽂本换⾏的时候刚好能够放下⽂字,但是标点符号把这个⽂字带着换⾏了如下图所⽰:
如果的在上⼀⾏显⽰,那么句号就应该在下⼀⾏显⽰,然⽽句号是避⾸标点,不能出现在开头。因此,“的”字就被带到下⼀⾏了中⽂标点的这种换⾏特性,即使设置word-break:break-all也是⽆效的,此时需要⽤到的CSS属性是line-break。
line-break属性简介
line-break属性主要⽤中⽇韩3种语⾔中,其中以中⽂和⽇⽂为主
语法如下:
.class {
/* 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
适⽤元素所有元素
是
as specified
Animation type discrete
语法
值介绍
auto使⽤默认的断⾏规则分解⽂本
loose使⽤尽可能松散(least restrictive)的断⾏规则分解⽂本。⼀般⽤于短⾏的情况,如报纸。normal使⽤最⼀般(common)的断⾏规则分解⽂本。
strict使⽤最严格(stringent)的断⾏原则分解⽂本。
html animation属性anywhere 在每个印刷字符单元(typographic character unit)的周围,都有⼀个⾃动换⾏(soft wrap)的机会,包括任何标点符号(punctuation character)或是保留的空⽩字符(preserved white spaces),或是单词之间。但忽略任何⽤于阻⽌换⾏的字符,即使是来⾃ GL、WJ 或 ZWJ 字符集的字符,或是由 word-break 属性强制的字符。不同的换⾏机会拥有相同的优先级。也不应⽤断字符(hyphenation,可能是 "-")
最后
这⾥我们只需要在css中加上line-break: anywhere;就好了.class {
line-break: anywhere;
}
效果如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论