我有一个css按钮样式和一些预定义的颜色样式。我使用颜色类为相同颜色的颜色和按钮样式着色以使按钮变圆。
如何在按钮上添加悬停样式以将颜色更改为浅色?我认为它会像.class class2:hover {etc}一样简单,但由于某种原因它不起作用。
这是我准备演示的小提琴: http://jsfiddle.net/7n4Wy/
HTML
<p class="red button">Test</p>
<p class="blue button">Test</p>
<p class="red"> Not a button </p>
CSS
.red {
background: red;
}
.blue {
background: blue;
}
.button {
border-radius: 6px;
}
.button:hover .red:hover {
background: pink;
}
答案 0 :(得分:10)
您所拥有的是尝试匹配 {/ 1>}内的 .red:hover
,这意味着您的标记中存在嵌套元素。
由于您选择了相同的元素,因此您需要将这两个类与一个.button:hover
组合在一起:
:hover
答案 1 :(得分:2)
使用以下代码JSFIDDLE
.button.red:hover {
background: pink;
}
答案 2 :(得分:2)
您可以通过用逗号分隔它们来将CSS规则应用于多个选择器(类如«.button»,或类似«:hover»之类的状态)。
因此只需添加一个逗号:
.button:hover, .red:hover {
background: pink;
}
答案 3 :(得分:1)
要应用多个类,请不要添加空格(只使用其他句点):
CSS
p.button {
border-radius: 6px;
}
p.red {
background: 6px;
}
p.button.red:hover {
background: pink;
}
HTML
<p class="button red">Hover Here</p>
该空格用于表示子元素。即p.button red:hover会影响悬停时类为红色的所有元素,这些元素完全包含在带有类按钮的父段落中。