我已经找到了以下完美的CSS代码段,它会在此link创建zip zag边框。
.h-zigzag {
background:
linear-gradient(-135deg, #333538 5px, transparent 0) 0 5px,
linear-gradient(135deg, #333538 5px, #fff 0) 0 5px;
background-color: #333538;
background-position: left bottom;
background-repeat: repeat-x;
background-size: 10px 10px;
}
正如您所看到的,代码创建了一个perfecr zig zag边框,但我需要将此边框添加到包含图像的框中:
.h-zigzag {
background: url(../img/grrenfooter.png) repeat-x top left scroll transparent;
}
你能帮我把它们混合起来吗?我已经尝试了几种方法但是当我混合它时图像消失了!
答案 0 :(得分:4)
你可以这样做,但是你需要屏蔽,据我所知它只能在webkit中使用。
#zigzag {
width: 600px;
height: 400px;
-webkit-mask-image: linear-gradient(0deg, transparent 30px, white 30px), linear-gradient(-135deg, white 15px, transparent 15px), linear-gradient(135deg, white 15px, transparent 15px);
-webkit-mask-position: left bottom;
-webkit-mask-repeat: repeat-x;
-webkit-mask-size: 100% 100%, 30px 30px, 30px 30px;
background: url("http://placekitten.com/1000/750");
background-size: cover;
}
body {
background-image: repeating-linear-gradient(20deg, lightgreen, lavender 40px);
}
<div id="zigzag"></div>
这可以通过创建具有锯齿形图案的图像来实现;而且图像的上半部分也是透明的。当我们将它用作遮罩时,它会使用透明的背景。
我已经用条纹图案设置了主体,以便可以看到锯齿形边框真的是透明的
答案 1 :(得分:0)
你不能混合它们,因为它们都使用background
属性,所以最后的CSS代码将被应用,因为它会覆盖前一个CSS代码。
您必须使用CSS2 multiple background feature并单独设置background-size
:
.h-zigzag {
height:200px;/*Set this to match with your background image*/
width:200px;/*Set this to match with your background image*/
background:
linear-gradient(-135deg, #333538 5px, transparent 0) 0 5px,
linear-gradient(135deg, #333538 5px, #fff 0) 0 5px,
url('http://placekitten.com/200/200');/*Your image URL here*/
background-color: #333538;
background-position: left bottom, left bottom, top;
background-repeat: repeat-x;
background-size:
10px 10px,
10px 10px,
100% 100%;/*Your image size here*/
}