CSS中,我們可以使用transition屬性來(lái)制作hover效果,使得元素在鼠標(biāo)懸停時(shí)能夠平滑地顯示或隱藏,要實(shí)現(xiàn)先隱藏后顯示的效果,我們需要借助JavaScript來(lái)控制元素的顯示狀態(tài)。
我們需要通過(guò)CSS將元素默認(rèn)設(shè)置為隱藏狀態(tài),例如使用display:none或者visibility:hidden屬性,在JavaScript中,我們可以使用事件監(jiān)聽(tīng)器來(lái)檢測(cè)鼠標(biāo)的懸停事件,并在事件觸發(fā)時(shí)改變?cè)氐娘@示狀態(tài)。
以下是一個(gè)簡(jiǎn)單的示例代碼:
HTML:
<div id="myElement">我要先隱藏后顯示!</div>
CSS:
#myElement { display: none; transition: all 0.3s ease; }
JavaScript:
var myElement = document.getElementById('myElement'); var isHidden = true; myElement.addEventListener('mouseover', function() { if (isHidden) { myElement.style.display = 'block'; isHidden = false; } else { myElement.style.display = 'none'; isHidden = true; } });
在這個(gè)示例中,我們通過(guò)CSS將元素默認(rèn)設(shè)置為隱藏狀態(tài),并使用JavaScript來(lái)檢測(cè)鼠標(biāo)的懸停事件,當(dāng)鼠標(biāo)懸停在元素上時(shí),JavaScript會(huì)改變?cè)氐娘@示狀態(tài),從而實(shí)現(xiàn)先隱藏后顯示的效果,我們還使用了CSS的transition屬性來(lái)使得元素的顯示和隱藏過(guò)程更加平滑。