css奇技淫巧之background-clip
Brian Lv3

这是一个有趣的属性,它让我们可以为元素的背景设置自定义图形。

我们的自定义图形可以延伸到元素的边框,内边距盒或内容盒。

看看代码实现

1
2
3
4
<p class="border-box">背景延伸到边框。</p>
<p class="padding-box">背景延伸到边框的内部边缘。</p>
<p class="content-box">背景仅延伸到内容盒的边缘。</p>
<p class="text">背景被裁剪为前景文本。</p>

css部分:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
p {
border: .8em darkviolet;
border-style: dotted double;
margin: 1em 0;
padding: 1.4em;
background: linear-gradient(60deg, red, yellow, red, yellow, red);
font: 900 1.2em sans-serif;
text-decoration: underline;
}

.border-box {
background-clip: border-box;
}

.padding-box {
background-clip: padding-box;
}

.content-box {
background-clip: content-box;
}

.text {
background-clip: text;
-webkit-background-clip: text;
color: rgba(0, 0, 0, .2);
}

最终得到的效果

image