HTML实体 - &nbsp的替代方案是什么?

10

我是一个HTML初学者(来自C语言背景),我遇到了HTML实体的概念。对于&nbsp,我有一些非常基本的问题。

  1. &nbsp实体如何在元素中引入不间断空格?

  2. 是否有任何替代使用&nbsp实体的HTML方法?

我的互联网搜索没有给出我要寻找的答案,这方面的一些指导将不胜感激。

2个回答

11

  &xa0;的别名。这个字符在HTML标准中被定义为“non-breaking space”。因此,有人在一个标准中说“浏览器必须将其视为空格,但不会断行”,所有创建Web浏览器的人都遵循了这个标准。

如果您的编辑器支持它,您也可以键入这个字符。浏览器不关心它是如何创建的,只要在输入流中看到字节0xa0即可。

作为替代方案,您可以使用各种CSS样式和技巧来创建不会换行的文本长度(例如使用样式white-space: nowrap(请参见here)或使用填充/边距)。

相关:


4
  1. &nbsp代表的是一个特定的空格字符。在指定位置上,它会根据指定的字体进行渲染。

  2. 没错,就是空格字符。你也可以通过CSS分割元素并应用填充或外边距来实现相同的效果。


这并不完全正确; 是指Unicode代码点为00A0的字符。空格是0020 - Aaron Digulla
谢谢,亚伦。我很想知道它们是如何不同的。我怀疑只有宽度不同。参考资料? - isherwood
2
在我所知道的所有字体中,它们都具有相同的规格(宽度、字距等)。特殊处理发生在浏览器中,它只是寻找可能用于拆分文本字符串的\u0020、CR、LF和TAB。此外,一些文本编辑器会以不同的方式突出显示此字符。 - Aaron Digulla

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接