例如,我正在测试的一个文件中有一个á。我在CSS文件中调用该图像作为背景图像,但在Safari中它不显示。但在FF和Chrome上可以显示。
作为测试,我将链接粘贴到浏览器中,结果相同。在FF和Chrome上可以正常工作,但Safari会抛出错误。所以这些语言字符可能会导致问题?
Firefox会转换以下URL,并将á更改为a%CC%81并加载图像。
http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Clássico_foto-Henrique-Peron-470x120-1371827671.jpg
您可以看到它在上方中断...但是FF和Chrome将其转换为:http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Cla%CC%81ssico_foto-Henrique-Peron-470x120-1371827671.jpg
您也可以在此处查看实际效果:http://jsfiddle.net/Md4gZ/2/
.testbox {
width:340px;
height:100px;
background:url('http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Clássico_foto-Henrique-Peron-470x120-1371827671.jpg') no-repeat top left;
}
那么正确的处理方式是什么。我正在使用PHP和WORDPRESS进行开发。我宁愿不要告诉客户端返回并替换所有具有特殊字符的文件。
感谢您的帮助。