“& nbsp;&rdquo之间的区别是什么?和“ldquo; &rdquo ;?

它们都意味着空间,但有什么区别吗?     
已邀请:
一个是不间断的空间,另一个是常规空间。不间断的空间意味着该行不应该被包裹,就像它不会被包裹在单词的中间一样。 此外,正如Svend在评论中指出的那样,不间断的空间并没有崩溃。     
实体
 
产生一个不间断的空间,当您不希望在该位置自动换行时使用该空间。常规空间具有字符代码32,而非中断空间具有字符代码160。 例如,当您将数字显示为千位分隔符:1 234 567时,则使用不间断空格,以便不能在单独的行上拆分数字。如果您显示货币并且金额和货币之间有空格:42 SEK,那么您使用不间断的空间,这样您就不会在一行上获得金额而在下一行中获得货币。     
除了这里的其他答案之外,非破坏空间不会像常规空间那样“折叠”。例如,两者
<p>Word1          Word2</p>
<p>Word1 Word2</p>
将在任何浏览器上呈现相同,而
<p>Word1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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>
并链接到小提琴。     
你可以在这里看到一个有效的例子: http://codepen.io/anon/pen/GJzBxo 和 http://codepen.io/anon/pen/LVqBQo 相同的div,相同的文本,不同的“空格”
<div style="width: 500px; background: red"> [loooong text with spaces]</div>
VS
<div style="width: 500px; background: red"> [loooong text with &nbsp;]</div>
    
多个普通空白字符(空格,制表符和换行符)被视为一个空格字符:   对于除
PRE
以外的所有HTML元素,空格序列将“单词”分开(我们在这里使用术语“单词”表示“非空白字符序列”)。格式化文本时,用户代理应识别这些单词并根据特定书面语言(脚本)和目标介质的约定进行排列。 所以
foo    bar
显示为
foo bar
但总会显示不间断的空间。所以
foo&‍nbsp;&‍nbsp;&‍nbsp;bar
显示为
foo   bar
    
如前所述,您将不会收到有“无休息空间”的换行符。 另外要小心,只包含“”的元素可能会显示错误,其中&amp; nbsp;将工作。至少在ie 6中(据我记得,IE7有相同的问题),如果你有一个空表元素,它将不会对元素应用样式,例如边框,如果没有内容,或者只有白色空间。因此,以下内容不会以边框呈现:
<td></td>
<td> <td>
边框将显示在此示例中:
<td>& nbsp;</td>
嗯 - 要放入一个虚拟空间,让它在这里正确渲染     
有许多不同类型的空间,例如空间,空间,非破坏空间...... Jon Tan在他的博客上写了最常见的空白。     
第一个不被HTML解析器视为空格,第二个是。因此,“”不保证在某些HTML标记内显示,而不可破坏的空间将始终显示。     
@Zoidberg是对的, 例:
<h1>title</h1> <h2>date</h2>
不会在标题标记之间显示空格
& nbsp ; 
会做空间:)     
&nbsp;
应作为空格处理。
&nbsp;&nbsp;
应作为两个空格处理 ''可以作为一个非常有趣的空白处理 ''+''可以单独处理''     
当有换行符时,当你使用$ bnsp时,该行不会中断;因为它是一个'不间断的空间'。如果您有某些产品名称,这一点很重要,它们应始终一起书写。 如果您(必须)使用空格作为数字分隔符(如12344567,在法国显示为12 344 567),则会很有趣。没有&nbsp;这条线会在数字中间断裂,非常难看。测试:12 344 567     
&nbsp;
是可堆叠的,这意味着您可以一起创建多个空格。 HTML只会解析一个空格''而它会丢弃其余空格... 如果你想要五个空格,你可以放置5x
&nbsp;
    

要回复问题请先登录注册