[2
最近,我遇到了一個相當尷尬的CSS監督。 我正在開發一個網站,其中包含一個狹窄的側邊欄,其中包含圖標。 缺乏描述性文本的空間,設計的設計需要可訪問但最初隱藏的工具提示,該工具提示是由長時間懸停觸發的。 工具提示將在三秒鐘懸停後出現。
我最初的方法涉及JavaScript狀態管理:
一個狀態變量,可跟踪工具提示可見性(可見/隱藏)。 該狀態將在相關的HTML元素上更新類。
mouseenter
工具提示將保持隱藏狀態(
mouseleave )。
事件感覺有點不可靠,並且單獨使用CSS更加簡潔,有效地實現了整個功能。
令人尷尬的實現:當CSS解決方案容易獲得時,我不必要地利用JavaScript庫。
我保留了React UI,但刪除了JavaScript狀態管理。 解決方案涉及一個簡單的CSS
transition-delay 。事物 {
過渡:0.2s;
}
.thing:懸停{
過渡 - 延遲:3s; / *僅延遲懸停動畫,而不是關閉 */
}
:Hover 可能會在初始點擊上激活。 如果鏈接導致帶有明確標題的頁面,則可能會提供足夠的上下文。 否則,用於觸摸事件的JavaScript事件處理仍然是一個可行的選擇。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3