错误例子:
ul :hover{} //ul的所有子元素设置了hover样式
正确例子:
ul:hover{} //ul会显示出想要的效果
ul:hover .one{// 子元素写在hover后面空格隔开
transform:rotateY(90deg)
}
ul:hover .two{
transform:rotateY(0deg)
}
ul:hover .thr{
transform:rotateY(360deg)
}
仅可以给自身的子元素设置样式 ,给其他元素子元素设置无效
接着上个例子举例子:
div:hover .one{}//不显示任何效果,hover失效
给兄弟元素设置:
ul:hover+.one
:hover选择器用于选择鼠标指针浮动在上面的元素。当鼠标悬停在元素上时,可使用此选择器设置元素的样式;它可用于每个元素。
语法:
与hover相关的伪类:
● :hover 选择器可用于所有元素,不仅是链接。
● :link 选择器设置了未访问过的页面链接样式,
● :visited 选择器设置访问过的页面链接的样式
● :active选择器设置当你点击链接时的样式
说明: 为了产生预期的效果,:hover 必须位于 :link 和 :visited 之后(如果存在的话),这样样式才能生效。
示例1: 在悬停在元素上时更改背景颜色。
效果图:
示例2:在文本上悬停时显示隐藏的块
效果图:
更多HTML的相关知识,可访问: web前端自学 !!
定义一个如图所示的矩形按钮
为其添加两个伪元素
添加伪类hover:
transition 属性是一个简写属性,用于设置四个过渡属性:
transition-property:规定设置过渡效果的 CSS 属性的名称。
transition-duration:规定完成过渡效果需要多少秒或毫秒。
transition-timing-function:规定速度效果的速度曲线。
transition-delay:定义过渡效果何时开始。
tips:请始终设置 transition-duration 属性,否则时长为 0,就不会产生过渡效果。
transition-timing-function:
伪元素默认的宽高为0,当鼠标悬浮时候,设置一定的过渡时间使其宽高为100%。
上述demo中:
在0.2s内 border-top-color变化,border-right-color推迟0.2s之后完成一个0.2s的过渡。
同理border-bottom-color推迟0.4s,border-left-color推迟0.6s.
demo