Html 悬停时背景颜色随背景大小变化
我有以下代码: CSS:Html 悬停时背景颜色随背景大小变化,html,css,hover,background-color,Html,Css,Hover,Background Color,我有以下代码: CSS: <style> div.testy { border:1px solid black; } div.testy:hover { background-color:red; } </style> <div class="testy" style="height:100px; background: url('down.png') no-repeat; background-
<style>
div.testy {
border:1px solid black;
}
div.testy:hover {
background-color:red;
}
</style>
<div class="testy" style="height:100px;
background: url('down.png') no-repeat; background-size:contain;">
aa
</div>
暴躁的{
边框:1px纯黑;
}
暴躁组:悬停{
背景色:红色;
}
HTML:
<style>
div.testy {
border:1px solid black;
}
div.testy:hover {
background-color:red;
}
</style>
<div class="testy" style="height:100px;
background: url('down.png') no-repeat; background-size:contain;">
aa
</div>
aa
'down.png'
是一个具有透明背景的图像。我想做的是改变背景的颜色,同时保持图像在颜色前面
前面的代码几乎所有操作都正确,只是当我将鼠标悬停在div
上时,什么都没有发生
问题:为什么悬停和背景色更改不起作用
这里有一个与问题相关的JSFIDLE链接:
问题是您正在使用
背景:
作为背景图像“
。分别使用background color
和background image
来区分background image
和background color
div.testy{
边框:1px纯黑;
}
暴躁组:悬停{
背景色:红色;
}
aa
问题是您正在使用背景:
作为背景图像“
。分别使用background color
和background image
来区分background image
和background color
div.testy{
边框:1px纯黑;
}
暴躁组:悬停{
背景色:红色;
}
aa
发生这种情况是因为您已经在html中内联定义了背景。
除非添加了,否则内联样式始终覆盖css文件中设置的样式!重要信息
,请参见样式
我建议您只在内联样式中设置背景图像
,然后在CSS文件的规则中设置背景颜色
div.testy{
边框:1px纯黑;
}
暴躁组:悬停{
背景色:红色;
}
aa
发生这种情况是因为您已经在html中内联定义了背景。
除非添加了,否则内联样式始终覆盖css文件中设置的样式!重要信息
,请参见样式
我建议您只在内联样式中设置背景图像
,然后在CSS文件的规则中设置背景颜色
div.testy{
边框:1px纯黑;
}
暴躁组:悬停{
背景色:红色;
}
aa
您正在内联设置的背景将覆盖css规则中的背景。内联样式总是覆盖任何内容(除了带有!important的内容)。如果删除内联并将其放入规则中,它将起作用。或者,本文件中包含了另一种方法
在这里,我们说‘嘿,我希望bkgrnd图像是这个’……而不是背景……因为背景包括图像、颜色、重复等所有内容。这是速记。因此,从技术上讲,您也在设置bkgrnd颜色…这就是为什么它凌驾于您的悬停之上
这里是另一个选项…从内联中删除并将其放入规则中…按原样…然后它也可以工作
正在内联设置的背景将覆盖css规则中的背景。内联样式总是覆盖任何内容(除了带有!important的内容)。如果删除内联并将其放入规则中,它将起作用。或者,本文件中包含了另一种方法
在这里,我们说‘嘿,我希望bkgrnd图像是这个’……而不是背景……因为背景包括图像、颜色、重复等所有内容。这是速记。因此,从技术上讲,您也在设置bkgrnd颜色…这就是为什么它凌驾于您的悬停之上
这里是另一个选项…从内联中删除并将其放入规则中…按原样…然后它也可以工作
现在可以工作了,谢谢。有趣的是,重复也必须取出才能工作。现在可以了,谢谢。有趣的是,重复也必须取出才能工作。