Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS渐变到普通背景_Css - Fatal编程技术网

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;
}