【发布时间】:2014-09-10 11:18:43
【问题描述】:
我正在尝试制作一个 CSS 按钮。正如您在下面看到的,我无法为角落的第二个 HTML 元素创建渐变。通常我会使用边框或简单地旋转一个元素来创建一个带有渐变的三角形,但问题是我的三角形不是 90 度正方形。
所需设计:(灰度,视网膜 200% 缩放)
我的 CSS 按钮:(蓝色,视网膜 200% 缩放)
有没有更好的方法来使用 CSS 创建这个按钮?
http://jsfiddle.net/G8ZBz/ 或直接阅读以下内容:
HTML 代码
<div class="button">
<div class="button-inside"></div>
</div>
CSS
.button {
width: 225px;
height: 60px;
background: #2983d2;
}
.button:before {
position: absolute;
width: 0px;
height: 0px;
left: -13px;
content: "";
display: block;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-right: 13px solid #2983d2;
}
.button:after {
position: absolute;
width: 0px;
height: 0px;
top: 0;
right: -13px;
content: "";
display: block;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-left: 13px solid #2983d2;
}
.button .button-inside {
position: relative;
width: 221px;
height: 55px;
margin-left: 2px;
background: #469bf9; /* Old browsers */
background: -moz-linear-gradient(top, #469bf9 50%, #1e80f7 50%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#469bf9), color-stop(50%,#1e80f7)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #469bf9 50%, #1e80f7 50%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #469bf9 50%, #1e80f7 50%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #469bf9 50%, #1e80f7 50%); /* IE10+ */
background: linear-gradient(to bottom, #469bf9 50%, #1e80f7 50%); /* W3C */
}
.button .button-inside:before {
position: absolute;
width: 0px;
height: 0px;
left: -13px;
content: "";
display: block;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-right: 13px solid #1e80f7; /* should be a gradient */
}
.button .button-inside:after {
position: absolute;
width: 0px;
height: 0px;
top: 0;
right: -13px;
content: "";
display: block;
border-top: 30px solid transparent;
border-bottom: 30px solid transparent;
border-left: 13px solid #1e80f7; /* should be a gradient */
}
【问题讨论】:
-
我不明白你想要达到什么目的。您是否尝试使用 CSS 制作与蓝色的第一个灰色按钮相同的形状?
-
是的,没错。该设计是灰度的,但我正在尝试制作一个看起来与它一模一样的蓝色按钮。我会更新我的帖子以澄清这一点。
-
最小。浏览器要求?
标签: css button geometry css-shapes