How do I prevent a background from repeating? Currently it's repeated twice, but I need the background to fill the whole page without repeating (because otherwise it looks strange!). Below is my code, but I can provide a site link if needed.
HTML
<div class="container">
<img src="box.png" style="float: left;" />
<div class="navrow">
<ul>
<li class="navmenu" style="background: #6dc066;"><a href="index.php">Home</a></li>
<li class="navmenu" style="background: #a155e7;"><a href="about.php">About</a></li>
<li class="navmenu" onclick="shakeregister();" style="background: #ffa500;">Register</li>
<li class="navmenu" style="background: #3399ff;"><a href="play.php">Login</a></li>
<li class="navmenu" style="background: #ff6666; margin-right: 0px;"><a href="contact.php">Contact</a></li>
<div style="clear: left;"></div>
</ul>
</div>
<div style='clear:both'></div>
</div>
CSS
body {
font-family: Titillium Web, sans-serif;
background-image: url("images/polarvillebg.png");
}
h1, h2, h3 {
font-weight: normal;
}
.container {
width: 70%;
margin: 0 auto;
margin-top: 2%;
}
.navrow {
float: right;
text-align: center;
}
.navrow li {
display: inline-block;
}
.navrow li a {
color: #fff;
text-decoration: none;
width: 100%;
height: 100%;
display: block;
}
.navmenu {
height: 100px;
width: 78px;
color: #fff;
margin-right: 4px;
line-height: 100px;
transition:height 0.5s;
-webkit-transition:height 0.5s;
box-shadow: rgb(204, 204, 204) 0px 0px 10px 0px;
cursor: pointer;
}
.navmenu:hover {
height: 107px;
}
答案 0 :(得分:4)
The CSS rule:
background-size: cover;
will make the background image large enough so that it covers the element that it's a background to. This will also have the side effect of not repeating the background image.
If you're still having trouble with background repeating after that, you can use:
background-repeat: no-repeat;
to explicitly force the background not to repeat.
So all together, in the code you provided, the full solution would be to change your body
rule to this:
body {
font-family: Titillium Web, sans-serif;
background-image: url("images/polarvillebg.png");
background-size: cover;
background-repeat: no-repeat;
}
答案 1 :(得分:0)
Just use background-size:cover;
:
background-size:cover;
Or, in just the background
property:
background: url("images/polarvillebg.png") scroll no-repeat center/cover;
答案 2 :(得分:0)
You can use this code to set the image to full screen background.
html {
background: url(images/bg.jpg) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
It will prevent from reapating, but there also exist : background-repeat in CSS.
答案 3 :(得分:0)
只是说:
body{
background-repeat: no-repeat;
background-size: cover;
}
&#34;不重复&#34;告诉背景图片停止重复自己。 &#34;盖&#34;告诉图像在整个视口上拉伸(没有失真)。