當我們在開發網站時,有時需要在元素高度達到一定程度時觸發一些動作,比如滾動到一定高度后顯示返回頂部按鈕等。CSS3提供了一種監聽元素高度的方法,下面我們來看看如何使用。
/* 監聽元素高度 */ div{ height: 500px; overflow: hidden; /* 隱藏超過元素高度的內容 */ } div::before{ content: ""; /* 必須加上content屬性才能顯示偽元素 */ display: block; height: 100%; /* 偽元素高度和元素相同 */ visibility: hidden; /* 將偽元素隱藏 */ } div:after{ content: ""; /* 必須加上content屬性才能顯示偽元素 */ display: block; clear: both; /* 清除浮動 */ }
這段代碼中,我們使用了偽元素來監聽元素高度。首先,將元素的高度設置為固定值,然后給元素加上一個偽元素before,高度也設置為100%,但將它隱藏,這樣我們就創建了一個空白的層,它的高度就是元素的高度。接下來,在元素中添加內容,當內容的高度超過元素的高度時,它就會溢出并被隱藏。此時,在元素中添加偽元素after,它的高度將被計算在內,當它和before元素高度相同時,代表元素已經滾動到最底部,我們就能夠捕捉到元素的高度了。
當我們得到元素高度后,就可以根據高度來執行相應的動作,比如顯示返回頂部按鈕等。感興趣的同學可以自行嘗試實現。
上一篇css3 盒陰影