今回は擬似ホバーの使い方を紹介します。擬似ホバーを使用する際の注意点を実際に見てみましょう。
ホバー疑似クラスによって追加されたアニメーション効果により、マウスが要素上に置かれたときにのみトリガーされ、マウスが離れると効果は中断され、非常に硬く表示されます。
ほとんどの人のアイデアは、JS の onmouseover および onmouseleave イベントを使用してアニメーション効果を実現することです。実際、それほど面倒な作業である必要はありません。CSS3 はこれらの問題の解決に役立ちます。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>离开时效果生硬</title> <style type="text/css"> p{ width: 100px; height: 100px; border:1px solid; margin:0px auto; margin-top: 200px; } p:hover{ transform: scale(2); transition: all 1s linear; } </style> </head> <body> <p></p> </body> </html>
p要素は、:hover疑似クラスがトリガーされたときにのみp要素に追加できるため。
マウスが p 要素から離れると、:hover 疑似クラスは有効になりなくなり、hover で記述されたアニメーション効果は即座に失われます。
この時点で、中断されたアニメーション効果を継続するには、元の要素に同一のトランジション効果を記述する必要があります。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>简单解决</title> <style type="text/css"> p{ width: 100px; height: 100px; border:1px solid; margin:0px auto; margin-top: 200px; /* 在原本元素上再加一个transition */ transition: all 1s linear; } p:hover{ transform: scale(2); transition: all 1s linear; } </style> </head> <body> <p></p> </body> </html>
このとき、マウスがいつ要素から離れても、変更されずに戻ります。
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
href と src、link と @import の違いは何ですか
CSS の絶対位置はどのようにしてすべての解像度と互換性があるのか
以上が疑似クラスホバーの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。