我需要创建一个如下所示的按钮,但是如果不使用图像就很难获得边框效果:
具体来说,我所看到的边框效果从未产生斜角效果 - 它几乎就像我需要两个边框一样。按钮的颜色,形状和其他方面不是问题。
这是我迄今为止所拥有的,非常接近:
button {
border: 1px solid gray;
border-radius: 4px;
text-align: center;
display: inline-block;
padding: 5px 10px;
background: linear-gradient(to bottom, #f9fcff 0%,#93a0c6 100%);
}

<button>OK</button>
&#13;
答案 0 :(得分:5)
您可以使用background: linear-gradient
,双border
和border-radius
来使用一个元素实现此效果。
要将背景应用于边框的透明中间部分,请增加背景的大小(即140%
)并调整其位置。
button {
background: linear-gradient(to bottom, #fff 0%, #8ab 100%);
background-size: 140%;
background-position: 0 50%;
border: 4px double #23538a;
border-radius: 6px;
padding: 5px 8px;
color: #23538a;
}
<button>OK</button>
答案 1 :(得分:0)
这会让你走近。使用box-shadow
,padding
和&#39; border-radius`的组合:
.btn-container {
display:inline-block;
border: solid 1px #224488;
border-radius: 4px;
padding: 2px;
background:#acd;
box-shadow:0px 4px 6px #cde inset;
}
.btn {
display:inline-block;
border: solid 1px #224488;
border-radius: 4px;
padding: 2px;
background:#acd;
box-shadow:0px 5px 10px #e0f0ff inset;
}
<div>
<span class='btn-container'>
<span class='btn'>Click here!</span>
</span>
</div>