我可能会比实际需要更难,但我无法让它发挥作用。我的项目文件夹结构是: -config
-CSS
-images
-nbproject
-public_html
-test
在我的CSS中,我试图引用background.png文件。我认为上升一级用../表示,所以我有:
background-image:url(../images/background.png);
然后,在index.html文件中,我尝试使用以下方法导入CSS文件:
<link rel="stylesheet" type="text/css" href="../css/styles.css">
背景没有显示,所以我猜测我正在错误地指定路径。是../不是说'上升到一个级别&#39;
的方式我正在尝试使用此类应用背景图像:
.body {
background-image:url(./images/background.png);
}
然后,按如下方式应用CSS:
<body class="body">
答案 0 :(得分:2)
background-image:url(../images/background.png); <-- this is relative to styles.css
<link rel="stylesheet" type="text/css" href="../css/styles.css"> <-- this is relative to your HTML file
CSS和图像需要位于web根目录中,位于public_html
下面-nbproject
-public_html /
的index.html
CSS /
图像/
-test
然后您将使用:
background-image:url(../images/background.png);
和
<link rel="stylesheet" type="text/css" href="css/styles.css">
答案 1 :(得分:1)
../
符号确实表示上升一级。但这适用于URL和Web服务器阻止外部受众访问外部世界不应该看到的文件系统部分。
您需要采用
并将此文件结构放在public_html
下安全强>
这种机制可以阻止人们做出像
这样的恐怖事件 http://<your machine name>/../../../etc/passed etc
答案 2 :(得分:0)
您的问题是所有文件都应位于public_html
文件夹中,公共HTML无法访问相同级别的公共HTML中的所有其他文件夹。
将所有文件夹移至public_html
并在index.html中更改css文件的路径:
<link rel="stylesheet" type="text/css" href="css/styles.css">