首頁 > web前端 > css教學 > 如何在滑鼠離開元素後保留 CSS 懸停狀態?

如何在滑鼠離開元素後保留 CSS 懸停狀態?

Susan Sarandon
發布: 2024-12-31 16:42:10
原創
703 人瀏覽過

How Can I Preserve CSS Hover State After the Mouse Leaves the Element?

在「取消懸停」後保留CSS懸停狀態

在網頁設計中,懸停狀態通常用於在滑鼠懸停停時顯示附加內容。不過,預設情況下,當滑鼠遊標離開指定區域時,該內容就會消失。本文介紹了一個 CSS 解決方案,用於在「取消懸停」遊標後保持懸停狀態可見。

提供的範例利用 ':hover' 偽類別在將滑鼠懸停在 div 上時顯示影像。但是,當懸停事件結束時,影像會消失。為了解決這個問題,可以採用以下 CSS 技術:

div img {
    position: absolute;
    opacity: 0;
    transition: 0s 180s;
}

div:hover img {
    opacity: 1;
    transition: 0s;
}

div {
    line-height: 1.2em;
    font-size: 1em;
    color: black;
    transition: 0s 180s;
}

div:hover {
    line-height: 0;
    font-size: 0;
    color: transparent;
    transition: 0;
}
登入後複製

此程式碼結合使用絕對定位、不透明度和過渡來實現所需的效果。不透明度最初設定為 0,使影像不可見。懸停時,不透明度設定為 1,顯示影像。為了防止內容在「懸停」時消失,請使用過渡屬性並延遲 180 秒(3 分鐘)。這種延遲有效地抑制了不透明度過渡,使影像無限期地可見。

或者,也可以使用焦點事件來確保圖像在單擊時保持可見:

div:hover img:focus {
   opacity: 0;
   transition: 3s;
   -webkit-transform: rotate(-360deg) scale(0.23);
   -webkit-transform: rotate(-360deg) scale(0.23);
   -moz-transform: rotate(-360deg) scale(0.23);
   -o-transform: rotate(-360deg) scale(0.23);
   -ms-transform: rotate(-360deg) scale(0.23);
   transform: rotate(-360deg) scale(0.23);
}
登入後複製

這變體使用焦點事件和轉換來淡出並在單擊圖像後旋轉圖像,使其在轉換過程中保持可見。

透過實現透過這些 CSS 技術,您可以修改懸停狀態行為,以保持所需內容的可見性,即使在滑鼠遊標離開指定區域後也是如此。

以上是如何在滑鼠離開元素後保留 CSS 懸停狀態?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板