6

 谁能告诉我简单空格(使用键盘空格键创建)和(HTML 无间断空格)有什么区别?

我问这个是因为当我 在页面上同时使用(简单空格和 )时,它们的行为不同。

在我的 Web 应用程序中,当我将一个简单的空格(使用键盘空格键)放入 aspan时,它没有高度或宽度(0px),但是当我放入&nbsp它时,span它有一个高度和宽度。

当我用标签尝试同样的事情时div,发生了同样的问题。

见 jsfiddle

在 jsfiddle 你可以看到当我使用一个简单的空间时,元素没有高度(它总是0px),但是当我使用时 ,它有一个高度。

4

3 回答 3

5

nbsp代表非破坏空间,主要有两个区别:

  1. 使用普通的空白字符,如果不再有水平空间,内容将被环绕。因此,foo bar可能呈现为

     foo
     bar 
    

    foo bar将始终呈现为

    foo bar
    

    如果没有足够的水平空间,内容就会溢出。

  2. 浏览器可以决定在 HTML 元素内容的开头或结尾修剪空白字符。这在规范中有所描述:

    为了避免 SGML 换行规则的问题和现有实现之间的不一致,作者不应依赖用户代理在开始标记之后或结束标记之前立即呈现空白。

    这意味着<div> foo bar </div>浏览器将其解释为<div>foo bar</div>并因此解释<div> </div><div></div>(即作为空元素)。

于 2013-10-29T04:52:06.777 回答
1

不间断的空间和正常的空间是不同的。不间断空格就像一块磁铁,将单词或字符连接在空格的两侧,防止在其位置自动换行。例如:2018 年 7 月 20 日

与正常空间相比,非破坏性可防止非破坏性和 ASCII 甚至不同。

不可破坏空间的 ASCII 为 160

正常空间的 ASCII 是 32。

于 2018-07-20T12:41:13.180 回答
0

嗯,有&nbsp;和简单空间之间的区别。&nbsp;is 指 Html 中的非中断空间意味着它不会随着行的结尾而中断,您可以在此处找到更好的解释

http://www.htmlbasictutor.ca/non-break-space.htm

期待空间,如果您在项目中使用它超过一次,它将崩溃,这是基本的区别,您也可以在该链接中找到其他的。

于 2013-10-29T04:55:20.110 回答