我知道CSS中的相对路径应该基于CSS文件的位置,由Using relative URL in CSS file, what location is it relative to?和Is a relative path in a CSS file relative to the CSS file?回答。重定向的CSS文件中的相对路径
但是,我有一个内容管理网站,允许在需要时覆盖CSS。我产生头一个页面的所有内容的链接,与像格式:
<link rel="stylesheet" type="text/css" href="/content/data/?s=123&get=.css">
如果显示的部分是使用默认情况下,静态CSS文件,这一事实是由服务于网页检测/content/data/;在这种情况下,它会重定向到该静态文件。
这些静态CSS文件可能包含相对路径存储在文件夹中附近的图像,所以当我的CSS文件是在/some-folder/styles/file.css,它包含
body { background-image: url(../images/section-123-bg.png); }
浏览器寻找/some-folder/images/section-123-bg.png。
这在Chrome,Safari或Firefox中似乎不成问题。 IE浏览器,但是,似乎寻找/content/images/section-123-bg.png。它似乎将/content/data/作为它结束的CSS文件的基本路径。
我的问题是:
是一个浏览器应该哪个源路径从CSS文件中的计算相对路径的时候开始的?
- CSS文件的最终源路径 - 所有重定向完成后(如的Webkit/Mozilla浏览器)或
- 从连杆元件的href的初始源路径(如Internet Explorer)
谢谢!这将作为重定向到静态文件的替代品,但我仍然需要提供动态CSS,它通常以静态版本的副本开始,然后进行修改。结果,这个变体在到达浏览器后可以有相同的相对链接进行处理。 –