根据小提琴,我试图使用手动连字,在我的代码上我用()签署“之间”字,但答案在输出中没有连字符!我的问题是什么?
Here是小提琴。
HTML
<p>word-spacing to zero to remove the space betwe­en inline-block</p>
CSS
p{
background-color:lightblue;
text-align:justify;
word-break:break-all;
width:160px;
hyphens: manual;
}
答案 0 :(得分:2)
SOFT HYPHEN字符是­
评估的字符,根据其Unicode定义是可选连字符,这适用于HTML。这意味着它表示允许的连字点。没什么,没什么。
您的代码使用word-break: break-all;
,它允许直接破坏任何字符串,没有连字符指示,以满足格式要求。在这种情况下,它可以是例如导致单词“remove”被拆分为“r”和“emove”。这些设置当然应仅用于允许这种破坏的语言和符号系统,而不是例如对于英语。
这里重要的是,由于严重破坏了单词,浏览器将不需要考虑稍后在“之间”连字符(通常依赖于字体)。所以它只是忽略了可选的连字点。
如果你删除了word-break: break-all;
声明,那么,假设使用了Times New Roman(常见的默认字体),浏览器确实将“介于”之间连字符为“betwe-”和“en”(如建议的话)严重错误的连字,但现在这并不重要)。这甚至在没有hyphens: manual
的情况下发生,这告诉浏览器仅应用 手动连字提示,实际上只是初始值和常用默认值。使用hyphens: auto
允许浏览器使用连字提示和应用他们自己的连字算法(如果有的话)。
示例(根据评论请求,但在“之间”一词中使用正确的连字提示):
p{
font: 16px Times New Roman;
background-color: lightblue;
text-align: justify;
width: 160px;
}
<p>word-spacing to zero to remove the space be­tween inline-block</p>
答案 1 :(得分:0)
尝试这样的事情......
<p>word-spacing to zero to remove the space betwe -en inline-block</p>
进一步请检查此
http://www.ascii.cl/htmlcodes.htm