【发布时间】:2015-01-13 18:04:15
【问题描述】:
这绝对把我逼疯了!&&%&$ 疯了......它违背了我能想到的一切。
这个角色就在这里..." "
在这些引号之间...打开谷歌浏览器并检查。你会看到它是一个 ... 正常吧?现在右键单击并实际查看此堆栈溢出页面的来源。这是一个普通的空格...(另外,我复制的字符是一个实际的空格)。
如果它是某种富文本编辑器之类的,我可以理解,但在原始 html 源代码中是一个常规空间,那么给出了什么?
这里只是按空格键(效果很好)..." "。
您甚至可以将其复制并粘贴到任何地方,然后大肆破坏并让 chrome 将   放在任何地方。即使剪贴板中复制的内容只是一个空格。
我的网站上随处可见这些愚蠢的字符,我不知道它们来自哪里,或者为什么 google 将 SPACE 转换为 nbsp;
我已经尝试检查实际的字符代码,它是我能找到的所有东西的常规空间......
我尝试的每一种方法都将其显示为 NORMAL 空间...那又是什么呢?
如果我使用 ruby 并执行" ".ord,我会得到32。如果我用破碎的空间来做,我也会得到32。
请帮助我让我失去理智。
编辑:您可以证明这一点...查看此页面上的源代码,您将看到两个空的" " 正常。现在查看控制台,只有一个是 ,但原始来源是相同的。
不使用 chrome 的人的图片(这是通过 chrome 开发工具查看这篇文章):
这是您在查看源代码时看到的相同文本的 HTML...找不到 nbsp。
【问题讨论】:
-
当您说“复制和粘贴”时,您是从浏览器窗口还是 F12 开发工具中复制粘贴?它可以从浏览器窗口复制。如果您要复制原始 HTML,浏览器是否将其转换为
nbsp;是否重要?它呈现相同的效果。 -
如果我查看 HTML,它不在源代码中。查看此 SO 线程的 HTML,它将显示为常规空间。所以在原始 html 中有两个 SPACES,但在控制台中,其中一个是 nbsp
-
也许这与您的 IDE 有关?奇怪的 linting 程序可能会导致细微的意外差异。原始来源是什么样的?还是
nbsp;只在inspector 中? -
这是 chrome 38.0.2125.122,您从我的原始帖子中看到的图像是 chrome dev tools。我正在使用vim,尽管这无关紧要,因为一旦它在剪贴板中,您就可以将其复制并粘贴到其他地方并触发chrome以放置nbsp(这就是我将其放入我的SO问题正文中的方式)。如果您在此页面的 HTML 上查看源代码,您将看到它不在源代码中,但它显示在 chrome 开发工具中
-
当我查看这个问题的来源时,我得到了
" "。 是 no-break space character。我不知道为什么我看到的东西和你不一样。
标签: google-chrome unicode encoding utf-8 character-encoding