我希望背景图像覆盖整个可用空间而不会被压扁
实际上我认为background-size
是什么意思,但我想我做错了,因为它不起作用,请帮助我。
HTML
<div class="myDiv">
<p class="paragraph">Lorem Ipsum</div>
</div>
CSS
body {
background-color: black;
}
.myDiv {
color: white;
background: url('http://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.png') no-repeat center center fixed;
background-size: cover;
}
FIDDLE
http://jsfiddle.net/V7KSb/
答案 0 :(得分:5)
只需将body和html设为100%高度,同样为div
body, html{
height:100%;
padding:0;
margin:0;
}
.myDiv {
color: white;
background: url('http://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.png') no-repeat center center fixed;
height:100%;
padding: 20px;
box-sizing: border-box;
}
请参阅小提琴:http://jsfiddle.net/V7KSb/5/
更新:给定myDiv
一些填充并使用box-sizing: border-box;
以确保它不会超过100%。
答案 1 :(得分:2)
问题是背景是在div上而且div不够大。如果您必须拥有div的背景,请尝试以下方法:
.myDiv, body, html {
width:100%;
height:100%;
padding:0;
margin:0;
}
jsFiddle:http://jsfiddle.net/jdwire/V7KSb/3/
答案 2 :(得分:0)
要在所有浏览器中达到div的100%高度,您需要将html
和body
设置为100%高度,但也应将以下样式应用于应该采用的div所有可用的高度:
min-height: 100%;
height: auto !important;
height: 100%;
答案 3 :(得分:0)
尝试一下:
.myDiv:before {
position: absolute;
background: url(../images/ig.png);
background-size: cover;
width: 100%;
height: 100%;
}