我正在尝试使用CSS创建一个按钮,该按钮将位于半透明背景上,该背景具有斜面或切边。这是Photoshop模型:
我能够使用纯色背景成功完成此操作,因为我可以使用具有相同背景的伪元素并“覆盖”按钮的边缘,但它不适用于半透明背景。
到目前为止,这是我在稳固的背景下所得到的:http://codepen.io/anon/pen/GJFpc
我开始相信这不可能只用CSS,但仍然希望S.O.可以再次救我!
答案 0 :(得分:3)
我喜欢一个很好的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;
}
您的代码有两个主要区别:
我相信这就是你所追求的。如果您需要任何进一步的帮助/解释,请随时询问。