我正在使用一个网页,其中我将字符集从 iso-8859-1 切换到 utf-8。页面顶部是这样的:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>[title of site]</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我只在页面中使用 ASCII 字符,并且由于 utf-8 编码超集 ASCII,这应该没问题。但是,文本中的单引号显示为被黑色菱形包围的问号。我已经验证这些是 ASCII 单引号(不是直引号)。
我在网上阅读了很多描述涉及 PHP、魔术引号、数据库配置等问题的解决方案。但是,这是一个没有被任何程序呈现的平面 HTML 页面。
此外,许多遇到此问题的人被告知切换到 UTF-8 来解决问题。这正是我介绍问题的方式。