将数据从MySQL数据库提取到网页时,数据中的所有省略号(...)都会在Firefox中显示为 或在IE7中显示为方框。
以前有没有人遇到过这个问题?
感谢。
更新1:我刚刚用'...'(三个点)更改了原始省略号'...',现在它有效吗?知道这可能是什么吗?
答案 0 :(得分:3)
您可能正在将数据库中的UTF-8数据提取到使用ISO(或其他)编码的网站。
数据库中的编码是什么?html的头编码是什么?
答案 1 :(得分:2)
这实际上是一个编码问题但我没有尝试解决这个问题,我建议你使用更正确的方法将椭圆编码为`& hellip;' HTML实体。
或者,您可以通过选择View>来测试它。字符编码>在Firefox或类似的IE中。最有可能你最终不得不添加:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
或
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
答案 2 :(得分:1)
这取决于数据库的字符集
你总是可以用&amp; hellip;
替换它们答案 3 :(得分:1)
我刚刚用'......'(三个点)改变了原来的省略号'...',现在它有效吗?
这可能是你想要做的。字符U+2026 HORIZONTAL ELLIPSIS是一个“兼容性”字符,用于帮助Unicode和旧字符集(例如Windows cp1252(西欧代码页))之间的往返,其中省略号本身就是一个字符。
(这个想法是,在现代系统中,你只需要使用三个点;如果字体想要在省略号中使间距不同 - 大多数不这样做 - 它们可以在输入三个点时提供自动连接。 )
所有省略号
省略号: - )
数据中的在firefox中显示为 ,在IE7中显示为方框。
可能所有其他非ASCII字符同样受到影响;当使用'smart quotes'或díäçritical标记时,您可能会看到类似的结果。
您的数据库很可能将字符存储为Windows cp1252字节,但是您将它们吐出的最终网页是UTF-8(默认情况下或由于它故意设置的方式)。
您可以通过浏览器的View-&gt;编码菜单并选择“西欧”(1252)而非“UTF-8”来检查。虽然你可以通过将正在生成的网页的编码更改为cp1252来解决此问题,但最好更改数据库的内容,以便所有内容都是UTF-8;然后所有Unicode字符都可以在您的应用程序中使用。
你如何做到这一点取决于你正在使用的语言/平台。