CSS中的相对URL真的是相对于文件本身的吗?
我从报告中看到: 部分URL的解释是相对于样式表的源,而不是相对于文档 其中“文档”指的是HTML文档 然而,我看到了一些关于相对路径的奇怪行为。我有一个Django项目,其中我的静态文件位于以下目录结构中:CSS中的相对URL真的是相对于文件本身的吗?,css,django,django-staticfiles,Css,Django,Django Staticfiles,我从报告中看到: 部分URL的解释是相对于样式表的源,而不是相对于文档 其中“文档”指的是HTML文档 然而,我看到了一些关于相对路径的奇怪行为。我有一个Django项目,其中我的静态文件位于以下目录结构中: static/ css/ stylesheet.css img/ image.png css包含 .someclass { background: url('<path/to/image.png>') } .someclass{ 背景:url
static/
css/
stylesheet.css
img/
image.png
css包含
.someclass {
background: url('<path/to/image.png>')
}
.someclass{
背景:url(“”)
}
令我感到奇怪的是,如果URL是URL('../../img/image.png')
,但不适用于URL('../img/image.png')
。后者是我所期望的正确路径,基于我在堆栈溢出(,)上看到的类似问题的所有答案——实际上,基于相对路径通常的工作方式
为了测试这一点,我将URL更改为URL('img/image.png')
,这会导致浏览器查找/static/css/stylesheet.css/img/image.png
我觉得这很奇怪。这就是所谓“相对于样式表源”的部分URL的真正含义吗?URL是相对于CSS文件本身,而不是它的封闭目录的吗?似乎您是从
/static/CSS/stylesheet.CSS/
URL提供CSS文件的(请注意末尾的/
斜线)。有效的url是/static/css/stylesheet.css