CSS渐变到普通背景
我有一个按钮,我给它加了一个渐变 代码如下:CSS渐变到普通背景,css,Css,我有一个按钮,我给它加了一个渐变 代码如下: .mybutton { background: #258dc8; /* Old browsers */ background: -moz-linear-gradient(top, #258dc8 0%, #258dc8 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#258dc8),
.mybutton {
background: #258dc8; /* Old browsers */
background: -moz-linear-gradient(top, #258dc8 0%, #258dc8 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#258dc8), color-stop(100%,#258dc8)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #258dc8 0%,#258dc8 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #258dc8 0%,#258dc8 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #258dc8 0%,#258dc8 100%); /* IE10+ */
background: linear-gradient(to bottom, #258dc8 0%,#258dc8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#258dc8', endColorstr='#258dc8',GradientType=0 ); /* IE6-9 */
}
我的问题是,在悬停状态下,我想去掉渐变,只需要一个普通的背景色
.mybutton:hover {
background-color: #333333;
}
出于某种原因,这是不工作的,因为它没有摆脱梯度。
我唯一能改变梯度的方法就是添加另一个梯度
有没有办法禁用渐变
我也试过background:none代码>但这并没有起到作用。渐变是有效的,因此仅设置背景色不会影响渐变效果。您特别需要覆盖背景图像
属性(以及过滤器
):
如果使用速记background:none
,则会同时设置颜色和图像(none
映射到背景图像
,省略一种颜色会将其设置为透明
),因此您会得到一个透明的背景
当然,您可以使用速记来声明颜色,图像将隐含为none
:
.mybutton:hover {
background: #333333;
filter: none;
}
.mybutton:hover {
background: #333333;
filter: none;
}