方法:1、使用「opacity:0;」;2、使用「visibility: hidden;」;3、使用「diaplay:none;」;4、使用「position:absolute;top:-999px ;」;5、利用clip-path屬性。
本教學操作環境:windows7系統、CSS3&&HTML5版、Dell G3電腦。
用css隱藏頁面元素有許多種方法。
第一種方法:opacity: 0;
#opacity屬性通常用來設定一個元素的透明度,從另一個角度來看,如果透明度為0,也就從視覺上隱藏了該元素。
這個屬性不是為改變元素的邊界框(bounding box)而設計的,元素本身依然佔據它自己的位置並對網頁的佈局起作用,它也將響應用戶互動。
第二種方法:visibility: hidden;
#第二個要說的屬性是visibility。
將它的值設為hidden將隱藏我們的元素。
如同opacity屬性,被隱藏的元素仍會對我們的網頁佈局運作。
與opacity唯一不同的是它不會回應任何使用者互動。
此外,設定了此屬性之後,元素在讀螢幕軟體中會被隱藏。
另外要注意的是,如果一個元素的visibility被設定為hidden之後,卻想要顯示它的某個子孫元素,只要將那個子孫元素的visibility明確設定為visible即可(樣式覆蓋)。
第三種方法:diaplay: none;
#display屬性依照詞義才是真正地隱藏了元素。
將display屬性設為none就能確保元素不可見且連盒模型也不生成,使用這個屬性,被隱藏的元素不佔據任何空間。
不僅如此,一旦display設為none任何對該元素直接打使用者互動操作都不可能生效。
此外,讀螢幕軟體也不會讀到元素的內容,因為這種方式產生的效果就像元素完全不存在。
任何這個元素的子孫元素也會被同時隱藏。
為這個屬性添加過度動畫是無效的,他的任何不同狀態值之間的切換總是會立即生效。
不過請注意,透過DOM依然可以存取到這個元素。因此你可以透過DOM來操作它。
第四種方法:position: absolute;
#假設有一個元素你想要與它交互,但是你又不想讓它影響你的網頁佈局,沒有合適的屬性可以處理這種情況(opacity和visibility影響佈局mdisplay不影響版面但又無法直接互動)。
在這種情況下,只能考慮將元素移出視覺區域,這個辦法既不會影響佈局,有可能讓元素保持可以操作。
具體是透過將position屬性設為absolute來實現(絕對定位)。
position: absolute; top: -999px; left: -999px;
第五種方法:clip-path
隱藏元素的另一種方法是透過剪裁它們實現,具體是透過clip -path屬性,這個屬性比較新,瀏覽器相容性也會比較差。
clip-path: polygon(0px 0px,0px 0px,0px 0px,0px 0px);
但是了解一下還是很必要的。
(學習影片分享:css影片教學)
以上是css怎麼控制元素隱藏的詳細內容。更多資訊請關注PHP中文網其他相關文章!