它们都表示空间,但有区别吗?


当前回答

多个普通空格字符(空格、制表符和换行符)被视为单个空格字符:

对于除PRE之外的所有HTML元素,空格序列分隔“单词”(我们在这里使用术语“单词”来表示“非空格字符序列”)。当格式化文本时,用户代理应该识别这些单词,并根据特定的书面语言(脚本)和目标媒体的约定来布局它们。

So

foo    bar

显示为

foo bar

但是始终显示无间断空间。所以

foo&‍nbsp;&‍nbsp;&‍nbsp;bar

显示为

foo   bar

其他回答

除了这里的其他答案外,非间断空格不会像常规空格那样被“折叠”。例如:

<!——都是——> < p > Word1 Word2 < / p > <!——和——> < / p > < p > Word1 Word2 <!——将在任何浏览器上呈现相同的效果——> <!—下图在渲染时保留空格。--> < p > Word1&nbsp;,,,,, Word2 < / p >

与其说是回答,不如说是举例……

例# 1:

<div style="width:45px; height:45px; border: solid thin red; overflow: visible">
    Hello&nbsp;There
</div>  

例# 2:

<div style="width:45px; height:45px; border: solid thin red; overflow: visible">
    Hello There
</div>

和小提琴的链接。

实体&nbsp;生成非换行空格,当不希望在该位置自动换行时使用该空格。常规空格的字符代码为32,而不间断空格的字符代码为160。

例如,当您显示以空格作为千位分隔符的数字:1 234 567时,则使用不间断空格,以便该数字不能在单独的行上分割。如果您显示货币,并且金额和货币之间有空格:42 SEK,则使用非换行空格,这样您就不会在一行上显示金额而在下一行上显示货币。

,应该作为空白处理。

,,应该作为两个空白处理吗

' '可以作为一个无意义的空格处理

' + ' '可以作为单个' '处理

当有换行符时,当你使用$bnsp;因为这是一个“非中断空间”。如果你有特定的产品名称,这可能很重要,总是应该写在一起。

如果您(必须)在数字中使用空格作为分隔符,比如12344567,在法国显示为12344567,这可能会很有趣。没有了线就会断在中间的数字,很难看。测试:12 344 567