我正在尝试使用 CSS 创建一个按钮,该按钮将位于具有斜面或切割边缘的半透明背景上。这是 Photoshop 模型:
我可以使用纯色背景成功地做到这一点,因为我可以使用具有相同背景的伪元素并“覆盖”按钮的边缘,但它不适用于半透明背景。
这是我到目前为止所得到的,在坚实的背景下:http ://codepen.io/anon/pen/GJFpc
我开始相信仅使用 CSS 是不可能的,但仍然希望 SO 可以再次拯救我!
我正在尝试使用 CSS 创建一个按钮,该按钮将位于具有斜面或切割边缘的半透明背景上。这是 Photoshop 模型:
我可以使用纯色背景成功地做到这一点,因为我可以使用具有相同背景的伪元素并“覆盖”按钮的边缘,但它不适用于半透明背景。
这是我到目前为止所得到的,在坚实的背景下:http ://codepen.io/anon/pen/GJFpc
我开始相信仅使用 CSS 是不可能的,但仍然希望 SO 可以再次拯救我!
我喜欢一个很好的 css 挑战,所以我尝试了一些东西,这就是我能想到的:http: //jsfiddle.net/QE67v/3/
css(无前缀)如下所示:
a.cta {
position: relative;
float: left;
padding: 8px 10px;
text-align: center;
text-decoration: none;
text-transform: uppercase;
font-size: 15px;
font-weight: normal;
background-image: linear-gradient(top, #ffffff 0%, #e4e4e4 100%);
box-shadow: inset 0 -2px 1px 2px #fff;
line-height: 16px;
height: 16px;
z-index: 2;
}
a.cta:after {
content: '';
display: block;
position: absolute;
width: 32px;
height: 32px;
right: -16px;
top: 0;
background-image: linear-gradient(top, #ffffff 0%, #e4e4e4 100%);
box-shadow: inset -3px -2px 1px 2px #fff;
transform: skewX(-45deg);
z-index: -1;
}
您的代码有两个主要区别:
我相信这就是你所追求的。随时询问您是否需要任何进一步的帮助/解释。