特定のページ要素をホバーなどでのみ表示できるようにすると便利な場合があります。例として、stackoverflow の「フィードバック - この投稿は役に立ちましたか?」ウィジェットがあります。これらの要素はインターフェースにとって重要である可能性があるため、このようなホバー表示機能は漸進的な拡張である必要があります。つまり、目立たず、適切に劣化する必要があります。
通常の方法では、JavaScript を使用しているように見えます。たとえば、要素を非表示にして、親要素がホバーされたときにそれらを使用できるようにします。その選択の理由は、:hover
特にレガシー ブラウザーではすべての要素がサポートされていないため、最初から css2 までの要素を非表示にすることを禁止している可能性があります。(js/jQuery の例については、hover で要素を表示する jquery を参照)
古いブラウザーに影響を与えずに、:not(:hover)
とを使用して、純粋な css3 で安全に*このような機能を実現できるかどうか疑問に思います。:hover
私が見る限り、要件は、サポートするすべてのブラウザーがすべての要素を:not()
サポートする必要があるということです。:hover
以下の情報源によると、そのように思われる
実装例: http://jsfiddle.net/LGQMJ/
どう思いますか?異議またはその他の情報源はありますか?
*念のために言うと、ブラウザーは常に最後の手段としてすべての要素を表示する必要があるということです。