何时使用&nbsp

jla*_*s62 19 html

我已经&nbsp在html中看到过并且除了创建一些空白外,还不能完全说出它的作用.我想知道它究竟是做什么以及什么时候应该使用它?

Que*_*tin 31

  (它应该在末尾有一个分号)是一个不间断空间的实体.

在两个单词之间使用它,不应该通过自动换行在它们之间插入换行符.

关于英语StackExchange上何时适当的语法,有一个很好的解释.


有时会滥用它来在网页中的内容之间创建水平空间(因为它不会像多个常规空间那样崩溃).通常应该使用填充和边距而不是此黑客.


Jia*_*aro 8

一个原因 是在文档中插入多个空格.

在HTML中,多个空白字符折叠到一个空格中.这包括标签和换行符.

如果要显示以下内容:

three   spaces.
Run Code Online (Sandbox Code Playgroud)

你可以插入3个 实体而不是像这样使用空格:

three   spaces.
Run Code Online (Sandbox Code Playgroud)

编辑:值得一提的 是,这更像是一件历史文物.在这个问题的答案中提到的几乎所有用途都有更好的替代方法来实现这个目标.然而, 仍然和我们在一起,这些是人们用它的一些东西.

另见:http://www.sightspecific.com/~mosh/www_faq/nbsp.html

  • 你*可以*,但你*不应该*.如果空格很重要,请使用`<pre>`或CSS`white-space`属性.如果您只想在内容之间留出空格,请使用边距或填充. (11认同)
  • "&nbsp;"的概念起源于印刷字体 - 并且在英语文本中使用它有非常正确的理由---和其他语言.例如,它通常应该在em-dash之前使用(`...语言文本&mdash;&mdash;和其他...`),其中换行应该只发生在*em-dash之后,而不是之前. (4认同)