gpt4 book ai didi

html - 使用手动断字不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 03:30:04 25 4
gpt4 key购买 nike

根据 fiddle,我尝试使用手动连字符,在我的代码中我使用 () sign over “between” word 但答案在输出中没有给出连字符!我的问题是什么?

Here是 fiddle 。

HTML

<p>word-spacing to zero to remove the space betwe&shy;en inline-block</p>

CSS

p{
background-color:lightblue;
text-align:justify;
word-break:break-all;
width:160px;
hyphens: manual;

最佳答案

SOFT HYPHEN 字符,即 ­ 的计算结果,根据其 Unicode 定义是一个可选连字符,这适用于 HTML。这意味着它指示允许的断字点。仅此而已。

您的代码使用 word-break: break-all;,它允许直接断开任何字符串,没有连字符指示,以满足格式要求。在这种情况下,它可能例如导致单词“remove”被拆分为“r”和“emove”。这样的设置当然应该只用于允许这种中断的语言和符号系统,而不是例如。对于英语。

这里重要的是,由于严重破坏单词,浏览器以后无需考虑在“between”之间连字符(像往常一样取决于字体)。所以它只是忽略了可选的断字点。

如果删除 word-break: break-all; 声明,那么,假设使用 Times New Roman(常用默认字体),浏览器确实会将“between”连字为“betwe-”和建议的“en”(这是一个严重错误的连字符,但现在这并不重要)。即使没有 hyphens: manual 也会发生这种情况,它告诉浏览器应用手动断字提示,实际上只是初始值和通用默认值。使用 hyphens: auto 允许浏览器使用断字提示应用它们自己的断字算法(如果有的话)。

示例(根据评论要求,但在单词“between”中使用正确的连字符提示):

p{
font: 16px Times New Roman;
background-color: lightblue;
text-align: justify;
width: 160px;
}
<p>word-spacing to zero to remove the space be&shy;tween inline-block</p>

关于html - 使用手动断字不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26463260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com