答案1
菱形字符是 U+FFFD 替换字符,浏览器可能会显示它来表示字符级数据错误(在当前应用的字符编码中不代表任何字符的字节)。
第一种情况是,页面被声明为 UTF-8 编码,但实际上却是 windows-1252 编码。如果您手动告诉 Firefox 应用该编码(视图 > 编码、西欧 (Windows) 或类似选项),您将看到预期的字符,即“智能引号”。在创作方面,应该通过例如将标签更改meta
为声明 windows-1252 而不是 utf-8 来修复此问题。
第二种情况类似,可以在浏览器中以类似的方式修复;在这种情况下,页面包含 windows-1252 编码的长划线 (—)。在创作方面,这可能更困难,因为这里的编码是在 HTTP 标头中声明的,无法在文档本身中覆盖;可能需要 Web 服务器管理员采取行动。