一尘不染

在CSS文件中使用相对URL,它相对于哪个位置?

html

在CSS文件中定义诸如背景图片URL之类的内容时,使用相对URL时,它相对于何处?例如:

假设文件/stylesheets/base-styles.css包含:

div#header { 
    background-image: url('images/header-background.jpg');
}

如果我包括通过这个样式表到不同的文件<link ... />会在CSS文件中的相对URL是 相对于样式表文件/stylesheets/
相对于当前文档 包括它是什么?可能的路径如下:

/item/details.html
/about/index.html
/about/extra/other.html
/index.html

阅读 381

收藏
2020-05-10

共1个答案

一尘不染

根据W3:

部分URL相对于样式表的来源而不是相对于文档进行解释

因此,在回答您的问题时,它将相对于/stylesheets/

如果考虑到这一点,这是有道理的,因为CSS文件可以添加到不同目录中的页面上,因此将其标准化为CSS文件意味着URL可以在链接样式表的任何地方使用。

2020-05-10