關於 a 標簽 hover 狀態樣式不生效的問題


今天在做頁面的時候,需要做一個默認 a 標簽文字的顏色,然后當 hover 的時候,a 標簽文字的顏色進行一個變化。

舉例來說,

默認的樣式寫的時候,用的是 a:link { color: blue };
當 hover 的時候,寫的樣式是 a:hover { color: red };
后來發現,hover 的時候樣式沒有生效。

之后去搜網頁查找了沒有生效的原因,大部分的都是描述的是因為 a 標簽的 4 種狀態寫的順序不對引起的,即 LOVE HATE 原則:
a:link a:visited a:hover a:active;

后來校對了一下,我寫的順序也是正確的,即:a:link , a:hover

后面把瀏覽器的 F12 模式的設備調試去掉了,即取消勾選設備圖標:

然后發現 a:hover 樣式就生效了。

后來明白為什么 a:hover 的樣式不生效了。因為我直接一直在使用瀏覽器的設備調試模式,使用的是 iPhone 調試模式:

導致 a:hover 沒有生效。后來取消設備調試模式后,當鼠標移動到 a 標簽上面的時候,就可以正常樣式變化了。

所以,最后的總結是:使用 a:hover 的時候,或者其他元素使用 hover 的時候,一定要注意是不是在模擬移動設備的場景,如果是,那 hover 就不會生效;如果想看 hover 生效的樣式,務必取消移動設備調試的模式。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM