.box{
width: 200px;
height: 100px;
padding: 1em;
border: 1em solid transparent;
background: linear-gradient(white,white),
url(../images/content.webp);
background-size: cover;
background-clip: padding-box(设置线性渐变背景裁剪),border-box(背景图片裁剪);
background-origin: border-box(背景图片边界框的相对位置);
}
background-clip:
padding-box(背景被裁剪到内边距框)||
border-box(背景被裁剪到边框)||
content-box(背景被裁剪到内容框)
background-origin:指定background-position属性应是相对位置。
padding: 1em;
border: 1em solid transparent;
background: linear-gradient(white, white) padding-box,
repeating-linear-gradient(-45deg,
red 0, red 12.5%,
transparent 0, transparent 25%,
#58a 0, #58a 37.5%,
transparent 0, transparent 50%)
0 / 5em 5em;
||
padding: 1em;
border: 16px solid transparent;
border-image: 16 repeating-linear-gradient(-45deg,
red 0, red 1em,(1)
transparent 0, transparent 2em(2),
#58a 0, #58a 3em,(3)
transparent 0, transparent 4em);(4)
(1)-(4) 层层覆盖
动画效果
.box{
width: 200px;
height: 100px;
padding: 1em;
border: 1px solid transparent;
background: linear-gradient(white,white) padding-box,
repeating-linear-gradient(-45deg,
black 0,black 25%,white 0,white 50%)
.6em .6em ;
animation: ants 3s linear infinite;
}
@keyframes ants{
to {background-position: 100%}
}
linear-gradient(white,white) padding-box,(覆盖下面的repeating-linear-gradient只显示出边框产生动画效果)
边框裁剪
.box{
border-top: .2em solid transparent;
border-image: 100% 0 0 linear-gradient(90deg,
currentColor 4em,
transparent 0);
padding-top: 1em;
color: rebeccapurple;
}
currentColor:根据 color 属性的变化而自动适应
border-image:
border-image-source:url(”) 图片的路径
border-image-slice 图片的裁切方式
border-image-repeat 裁切后图片的填充方式stretch/repeat/round,分别为拉伸,重复,平铺,默认值为stretch,顺序为:上下,左右。