css中隱藏元素的幾種方法,和與使用者互動問題

2022-06-30 06:24:09 字數 1389 閱讀 4895

用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隱藏元素的幾種方法 1.display none 2.visibility hidden 3.clip path polygon 0px 0px,0px 0px,0px 0px,0px 0px 4.opacity 0 5.position absolute top 9999px left 99...

css隱藏元素的幾種方法

在css中,要隱藏dom元素常見的幾種方法 1.opacity值為0 2.visibility值為hidden 3.display值為none 4.position值為absolute,並且將其移到不可見區域 5.在新的css中使用clip path來替代clip,不常用知道就行了 該屬性很少見,該...

CSS「隱藏」元素的幾種方法的對比

首先我們分別來說說到底有哪幾種隱藏元素的方法,有一些方法是眾所周知的,還有一些算是一種技巧。display none 設定元素的display為none是最常用的隱藏元素的方法。123 hide 將元素設定為display none後,元素在頁面上將徹底消失,元素本來占有的空間就會被其他元素占有,也...