box-shadow不是渐变,如何在按钮上获得渐变阴影?

时间:2012-12-30 14:19:46

标签: css html5 gradient css3

我刚刚发现CSS box-shadow不是渐变。

我希望在我的链接元素下显示为一个按钮,它是从一种RGB颜色到另一种RGB颜色的渐变,这看起来像一个投影。顶部RGB颜色为#333,按钮RGB颜色为#fff,其高度应为4像素。 (例如,我没有从按钮图像中测量过这个。)

所以我有一个

<a href="#" class="mybutton">Button</a>.

我想把影子直接放在它下面。

我正在尝试重现的带有渐变阴影的按钮就是这个:

enter image description here

使用box-shadow有没有相同的方法可以做到这一点,还是有其他办法吗?

1 个答案:

答案 0 :(得分:1)

也许就像下面这样(虽然你不得不玩一些你喜欢的颜色等):

<a href="#" class="btn">Button</a>​​​​​​​​​​​

.btn {
    border: solid 1px rgb(139,137,125); 
    border-color: rgb(182,179,161) rgb(167,164,146) rgb(139,137,125) rgb(167,164,146); 
    background: #C9C6B4; /* old browsers */ 
    background: -moz-linear-gradient(top, #D8D5C1 3%, #C9C6B4 4%, #A7A492 100%); /* firefox */ 
    background: -webkit-gradient(linear, left top, left bottom, color-stop(3%, #D8D5C1), color-stop(4%, #C9C6B4), color-stop(100%, #A7A492)); /* webkit */ /*    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#D8D5C1', endColorstr='#A7A492',GradientType=0 );*/ 
    -moz-text-shadow: rgba(0,0,0,0.2) 0px -1px 0px; 
    -webkit-text-shadow: rgba(0,0,0,0.2) 0px -1px 0px; 
    text-shadow: rgba(0,0,0,0.2) 0px -1px 0px;
    -moz-box-shadow: rgba(0,0,0,0.3) 0px 2px 3px; 
    -webkit-box-shadow: rgba(0,0,0,0.3) 0px 2px 3px; 
    box-shadow: rgba(0,0,0,0.3) 0px 2px 3px;
    cursor: pointer; 
    font: bold 12px/1em Arial, Helvetica, sans-serif; 
    color: rgb(255,255,255)!important; 
    text-align: center; 
    white-space: nowrap; 
    float: right; 
    margin: 0 0 8px 5px; 
    padding: 0.5em 1em; 
}

.btn:hover {
    border-color: rgb(211,106,13) rgb(185,72,0) rgb(166,53,0) rgb(185,72,0); 
    -moz-box-shadow: rgba(0,0,0,0.5) 0px 1px 2px; 
    -webkit-box-shadow: rgba(0,0,0,0.5) 0px 1px 2px; 
    -moz-text-shadow: rgba(255,255,255,0.9) 0px 0px 10px; 
    -webkit-text-shadow: rgba(255,255,255,0.9) 0px 0px 10px; 
    text-shadow: rgba(255,255,255,0.9) 0px 0px 10px; 
    box-shadow: rgba(0,0,0,0.5) 0px 1px 2px; 
    background: #DD6C00; /* old browsers */ 
    background: -moz-linear-gradient(top, #F69C11 3%, #DD6C00 4%, #BB4A00 100%);  /* firefox */ 
    background: -webkit-gradient(linear, left top, left bottom, color-stop(3%, #F69C11), color-stop(4%, #DD6C00), color-stop(100%, #BB4A00));
}

尼克