我遇到了一个以前从未见过的新问题:我的客户正在将文件添加到我们构建的项目中,并且某些文件名中包含特殊字符,因为其中一些单词是西班牙语。
例如,我正在测试的文件中有一个 á。我在 css 文件中将该图像称为背景图像,但在 Safari 中它不显示。但它适用于 FF 和 Chrome。
作为测试,我将链接粘贴到浏览器中,同样的事情。适用于 FF 和 Chrome,但 Safari 会引发错误。所以我猜语言字符正在抛出它?
Firefox 转换以下 url 并将 á 更改为 a%CC%81 并加载图像。
您可以在上面看到它中断...但是 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 进行开发。我宁愿不必告诉客户返回并用特殊字符替换所有文件。
任何帮助表示赞赏。谢谢!