1、网上百度的原因一般有如下几种,

第一种是:

选择器、:、hover之间有空格,或者冒号是中文符号;

第二种是:

没有注意active,visited,hover,link之间的生效顺序的关系,

active < hover < visitied / link

其意思就是active需定义在hover之后才能起作用,而hover需定义在visited和link之后才会起作用。当然,前提是它们同时存在的时候。

第三种是:

hover只会与子代元素元素及兄弟元素起作用。

ps:hover作用于兄弟元素时,仅仅只是对相邻的兄弟元素有用,且要写为a:hover +.b{}

第四种是:

低级错误。

我自己写的时候,发现hover不生效,但是绝对不满足上边提到的前3中状况。

最后发现,因为hover的元素存在行内式样式,所以导致了hover没有效果