我想创建一个div,如果div变大,只有一部分背景可以伸展。
情况:
请求:
示例图片:
答案 0 :(得分:2)
您可以使用border-image
来实现此目的,而无需HTML中的额外元素。将边框应用于:before
伪元素,其z-index
为-1,将其推送到主要内容后面。将顶部和底部边框宽度设置为红色和蓝色条纹的高度(本例中为67px),左右边框设置为0.使用fill
中的border-image
使用中间部分图像作为背景。并使用border-box
box-sizing
来使元素内的边框。
.flagbg {
position:relative;
width:213px;
}
.flagbg:before {
box-sizing:border-box;
z-index:-1;
position:absolute;
top:0;
left:0;
content:'';
height:100%;
width:100%;
border-width:67px 0 67px 0;
border-image:url('flag.png') 67 0 67 0 fill repeat stretch;
}
小提琴http://jsfiddle.net/L9e3T/ - 您可以编辑结果窗格中的文字并看到它动态调整大小