1

每当加载文档时,我都会尝试更改背景图像,并且当它达到这一点时:

document.body.style.backgroundImage="url('../images/mobile-bckground.png')";

该页面只是使背景变成纯白色。它在我的 javascript 中显示如下:

$(function() {
    document.body.style.backgroundImage="url('../images/mobile-bckground.png')";
});

我已经使用这个 css 验证了图像在正确的位置:

body
{
    background-image:url('../images/mobile-bckground.png');
}

它在后台正确显示它,为什么要这样做?

4

1 回答 1

2

我认为这个问题将归结为 CSS 的工作方式。

如果您在外部 CSS 文件中引用文件,则被引用文件的位置相对于外部 CSS 文件的位置

如果 CSS 在 HTML 本身内,则引用文件的位置相对于 HTML 文档的位置

因此,在外部 CSS 中有效的路径不一定直接在 HTML 中有效。


更新

如果该值是由 Javascript 设置的(在页面内部,或保存在外部文件中),则该位置仍将基于 HTML 页面,而不是 CSS 文件或 JS 文件的位置

于 2013-07-03T17:08:48.237 回答