合理的段落扩展了字间距,但我预计
不受这种扩张的影响。不幸的是,它 是 受影响,所以我需要找到一个未受影响的空格字符(最好是一个与普通左对齐段落中的普通空格宽度相同的字符)。有什么建议么?
合理的段落扩展了字间距,但我预计
不受这种扩张的影响。不幸的是,它 是 受影响,所以我需要找到一个未受影响的空格字符(最好是一个与普通左对齐段落中的普通空格宽度相同的字符)。有什么建议么?
你可以添加一个像 .
并使它隐形。
有用。 jsFiddle在这里
它不被解析为空格,因为它在技术上是一个不可见的字符。
对于更干净的方法,您可以通过插入字符 :after
伪元素..
span:after {
content: ".";
visibility: hidden;
}
HTML规范中未定义除SPACE和NO-BREAK SPACE之外的空格字符的呈现。在实践中,各种各样 固定宽度的空间 可以使用,并且它们不会在理由中扩展(实际上,它们被视为图形字符,只有空字形)。与宽度中的正常空间最匹配的那个是四个空间,  
但是从评论来看,您似乎更愿意使用THIN SPACE或SIX-PER-EM SPACE。
以前,用于将NO-BREAK SPACE视为不可扩展的浏览器,有些可能仍然可以,但由于一些奇怪的原因,大多数浏览器已经放弃了这个明智的想法。无法保证他们不会对固定宽度的空间做同样的事情。
除了理论上的点和所提到的风险之外,固定宽度空间还存在字体问题和易碎性。字体问题主要适用于IE的旧版本,并且如果其宽度适合您并且您采用了NARROW NO-BREAK SPACE,则可以通过使用NARROW NO-BREAK SPACE解决可破坏性(即,固定宽度空间被视为允许它们之后的换行符)。有字体问题的风险。
所以最好在CSS中做间距,即使它意味着更多的工作。对于例如“例如”在第一个时期之后有间距,你需要决定它应该是“例如”还是“e。 g。“在角色层面。在前一种情况下,只需将第一个句点包装在一个 span
并设置 padding-right
在上面。在后一种情况下,您可以例如使用 e.<span class=thin> </span>g.
并设置的宽度 span
到足够小的东西(使用 display: inline-block
和a width
设置)。
Unicode提供了几种 间距字符。在这里使用可能是 薄的空间,(Unicode 0x2009,  
在HTML中)小于但接近常规空间。 看到它在JSFiddle上工作。
您可能还对相关的Unicode 0x202F感兴趣,这是瘦空间的非破坏版本。
这对隐藏字符方法的好处是,空格实际上仍然存在于源中,因此将由屏幕阅读器读取(而隐藏字符将被完全忽略)。