为什么带有问号的钻石 出现在我的HTML中?

问题描述 投票:29回答:4

我有一个无序的列表,并且经常(但不总是!)出现在我在字符之间有两个空格的地方。造成这种情况的原因是什么,我该如何预防呢?

html
4个回答
28
投票

此特定字符 通常是在声明为UTF-8的输出(如页面)中显示的无效(非UTF-8)字符的符号。它经常发生在

  • 数据库连接不是UTF-8编码的(即使表是)
  • HTML或脚本源文件以错误的编码存储(例如Windows-1252而不是UTF-8) - 确保将其保存为UTF-8文件。该设置通常位于“另存为...”对话框中。
  • 提取不提供UTF-8的在线源(如小部件或RSS提要)

4
投票

这是一个字符集问题。获取一个工具来检查服务器的响应头(如果您使用的是Mozilla Firefox,就像Firebug扩展一样),以查看服务器响应与内容一起发送的字符集。如果服务器的字符集和实际内容的HTML字符集不匹配,您将看到一些奇怪的字符,如那些小的黑色菱形方块。


4
投票

我遇到过同样的问题 ....

您可以通过在模板中添加以下行来修复它!

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

更多细节 :

阅读本文 - http://blog.salientdigital.com/2009/06/06/special-characters-showing-up-as-a-question-mark-inside-of-a-black-diamond/comment-page-1/#comments


0
投票

从XSLT获取HTML输出时遇到了同样的问题。除了Pradip的解决方案,我还能够使用UTF-32解决问题。

<meta http-equiv="Content-Type" content="text/html; charset=UTF-32" />
© www.soinside.com 2019 - 2024. All rights reserved.