CSS有一个word-break
属性,它允许单词在某些点(例如,在第一个超出所需长度的任意字符处)跨行拆分。但是,令我惊讶的是,似乎没有任何CSS机制(即使是支持得很差的机制)可以按音节**跨行拆分单词,就像在传统的印刷书籍中一样:
......那首赞美诗,裘德在一个聚......
他从未想到的有神论幻想。
我意识到
(i)在计算机上通常不需要这样做(因为我们可以动态重排和对齐),并且
(ii)则需要在客户机上使用连字符词典。
但它可能对特别长的单词有用(想想詹姆斯·乔伊斯!),或者仅仅是复制印刷书籍的风格;而且由于现代浏览器中已经有拼写检查功能,所以没有理由不能使用连字符。
HTML有一个lang属性,所以我们通常可以推断出预期的语言;如果字典不可用,我们可以“优雅地降级”并以其他方式 Package 。
那么:**是否曾经认真考虑过CSS的音节拆分?或者已经被拒绝了?我们能期望在未来看到它的实现吗?
1条答案
按热度按时间fdx2calv1#
您正在寻找
hyphens
属性。您需要lang
HTML属性来使其工作(因为连字符显然是基于语言的)。浏览器可以按照它选择的任何规则,在适当的断字点自动断字。但是,建议的换行机会(请参阅下面的建议换行机会)将覆盖自动断点选择(如果存在)。
注:自动设置的行为取决于正确标记的语言,以选择适当的连字符规则。必须使用lang HTML属性指定语言,以确保在该语言中应用自动连字符。
Read more here
第一个
同样,
:lang()
伪类也是related的一种。