我已经尝试了一切,无法弄清楚为什么我不能让背景图像显示为这个div。
**Here is the code:**
body {
margin: 0px;
padding: 0px;
}
#top {
background-image: url(../IMG/PINS.jpg) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
<html>
<head>
<title>TEST BCKGRND IMAGE</title>
<link rel="stylesheet" type="text/css" href="CSS/style.css">
</head>
<body>
<div id="top">
</div>
</body>
</html>
文件结构设置如下:我有一个名为TEST_SITE的主文件夹,在该文件夹中我有一个CSS文件夹和一个名为IMG的图像文件夹。
我不能为我的生活弄清楚为什么背景图像没有出现。
如果有人可以请你告诉我可能出错的问题,我会非常感激。
谢谢。
设置#top
div的高度很重要:如果你设置宽度,然后将高度设置为auto,那么背景仍然不会显示,因为div中没有任何内容可以放置背景。但是,如果通过在css中设置一个来强制高度,则会显示背景。你为你的路径提供的代码是不正确的,因为background-image
只需要一个图像的路径(而不是其他),而你给出的代码适合于background
。
看看我的fiddle
您需要从#top
设置高度和宽度值,并像我的答案一样使用background-position:center center; background-repeat:no-repeat;
:例如
#top{
width:500px;
height:500px;
background-image: url(YOUR IMAGE PATH);
background-repeat:no-repeat;
background-position:center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
或者你可以这样做:
#top{
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
background:url(YOUR IMAGE PATH) no-repeat fixed center;
width:500px;height:500px;
}
这是因为你的div是空的。如果您向其添加内容,那么您将看到背景。您还可以使用CSS设置高度或添加填充。
<div id="top">
<p>A large amount of text here</p>
</div>
要么
#top{
height:400px;
background-image: url(yourimagehere);
background-repeat:no-repeat;
background-position:center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
要么
#top{
padding: 25px 0;
background-image: url(yourimagehere);
background-repeat:no-repeat;
background-position:center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}