我目前在y上有一个重复的图像,但我希望它从div开始的地方开始下降20 px ....
我该怎么做?
答案 0 :(得分:38)
也许您应该使用:after
或:before
,因为您无需在HTML中添加额外的标记。像这样:
.container{
height:400px;
background:red;
position:relative;
width:400px;
}
.container:after{
content:"";
position:absolute;
top:20px;
left:0;
right:0;
bottom:0;
background:url(http://lorempixel.com/400/200) repeat-y;
}
适用于IE8&以上。对于IE7或IE6,您可以为此提供额外的DIV
。
答案 1 :(得分:1)
我更喜欢速记法:
.yourClass {
background: url(../images/yourImage.png) repeat-y 0 20px;
}
答案 2 :(得分:0)
我认为只是简单地合并background-position
和background-repeat
,例如repeat-y 0 20px
会奏效。假设这个jsFiddle sample表示OP的情况,解决方案应该使绿色背景从(垂直)20px开始; “你好!”文字不应该位于绿色背景之上。
我的回答是CSS无法做到这一点;意思是,您可能希望更改HTML结构以实现目标。但是,我正在开始一个赏金,希望其他人能够提出更好的答案。
答案 3 :(得分:-1)
.yourClass{
background: url(images/yourImage.png) repeat-y;
background-position: 0px 20px;
}
答案 4 :(得分:-2)
您只需要设置background-position属性:
background-position: 0px 20px;
background-repeat: repeat-y;