6

我在一个外部 css 文件中有这个,但它根本不起作用。我会假设我写错了,但是当放在内部时,它工作正常。关于可能发生什么的任何想法?

html
{
background-image:url(images/background-grid.jpg);
background-repeat:repeat;
}
4

5 回答 5

7

我假设您的 CSS 文件位于这样的文件夹中。

    /
        css/
            你的css.css
        图片/
            背景-grid.jpg
        索引.html

CSS 文件中给出的路径是相对于CSS 文件的路径(在我给出的示例中,css文件夹)。所以你应该使用..

background-image: url(../images/background-grid.jpg);
于 2012-07-10T08:05:06.847 回答
4

我认为你没有写完全错误

但是最好使用body而不是html。

解释为什么要使用body

它允许您在该主体标签之上使用覆盖。就像身体上的网格背景和侧面的阴影。但两者都是正确的。取决于您要执行的操作。

如果你不重复你的背景,那么你的图片可能没有使用整个页面,那么你应该使用 html 标签。但在这种情况下,由于重复,它给出了相同的解决方案。

SO重播:tnx to attronics

你的“错误”的解释

如果您的图像与您的 html 页面位于不同的文件夹中(应该是这种情况)。您应该将..其用作 css 文件的相对路径。

如果没有..它,则意味着您将在与您的 html 页面相同的文件夹中查找该图像。

body{
  background-image:url(../images/background-grid.jpg);
  background-repeat:repeat;
}

这是一个提供一些CSS 基础知识的网站。不过没查出处。

于 2012-07-10T08:05:27.943 回答
2

可能是你的文件夹结构,试试

html
{
background-image:url(../images/background-grid.jpg);
background-repeat:repeat;
}
于 2012-07-10T08:05:02.723 回答
1

当我们有这些文件夹时

css
img
and index.html

当我们在称为内部css的索引页面中的样式标签中编写css时,它可以正常工作,但是当我们styles.css在css文件夹中正确css时,背景img不起作用。

因为您在文件夹中移动,并且背景 img 的路径不起作用。所以你必须这样写:

background-image: url('../img/bg.jpg');

然后它将正常工作

于 2021-03-28T08:21:22.327 回答
0

..这意味着上一层楼。

所以,如果你的文件夹结构是这样的:

image/
     background.png
css/
    stylesheet.css

那么你的css规则应该是这样的:

html {
background-image: url('../image/background.png');
}

如果你的文件夹结构是这样的:

style/
     image/
           bgr/
               background.png
     css/
         deeper/
               stylesheet.css

然后,上两层到图像目录,如下所示:

 html {
    background-image: url('../../image/bgr/background.png');
 }

等等。..只需将后面的斜杠加起来即可/

于 2014-08-16T17:16:28.273 回答