我使用CSS为Polymer元素设置背景图像。这适用于网络,但不适用于Cordova网络应用程序。我想解决这个问题。
我可以破解Polymer,但我是Cordova的新手,需要帮助跟踪在Cordova内部修改代码的网址。
Polymer在内部解析css,并使用css url。关于ios,以下陈述:
background-image: url('../img/health_background.png'); }
<img src="../img/health_background.png">
将替换为:
background-image: url(file:///private/var/mobile/Containers/Bundle/Application/FE5C8C06-E9B3-4F75-B9E7-40D6FD54FC0B/SyntraJS.app/www/img/health_background.png)
<img src="file:///private/var/mobile/Containers/Bundle/Application/FE5C8C06-E9B3-4F75-B9E7-40D6FD54FC0B/SyntraJS.app/www/img/health_background.png">
由Polymer的HTMLImports polyfill。
在Safari的调试器中查看这些元素,<img>
标记看起来很好,但background-image:
css不存在。我假设Safari不喜欢它的语法,并把它扔掉了。
如果我在Safari的调试器中添加相同的background-image
属性,则可以正常工作。
有关的任何建议:
- 为什么Safari会忽略原始background-image
?
- Cordova应用中的所有网址都是绝对文件网址吗?