2018-7-5 seo達人
如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里
用css隱藏頁面元素有許多種方法。
opacity屬性的意思是設置一個元素的透明度。它不是為改變元素的邊界框(bounding box)而設計的。這一位著將opacity設置為0只能從視覺上隱藏元素。而元素本身依然占據它自己的位置并對網頁的布局起作用,它也將響應用戶交互。
visibility
第二個要說的屬性是visibility。將它的值設為hidden將隱藏我們的元素。如同opacity屬性,被隱藏的元素依然會對我們的網頁布局起作用。與opacity唯一不同的是它不會響應任何用戶交互。此外元素在讀屏軟件中會被隱藏
注意,如果一個元素的visibility被設置為hidden,同時想要顯示它的某個子孫元素,只要將那個元素的visibility顯式設置為visible即可。
dispaly
display屬性依照詞義真正隱藏元素。將display屬性設為none確保元素不可見并且連盒模型也不生成。使用這個屬性,被隱藏的元素不占據任何空間。不僅如此,一旦display設為none任何對該元素直接打用戶交互操作都不可能生效。此外,讀屏軟件也不會讀到元素的內容。這種方式產生的效果就像元素完全不存在。
任何這個元素的子孫元素也會被同時隱藏。為這個屬性添加過度動畫是無效的,他的任何不同狀態值之間的切換總是會立即生效。
不過請注意,通過DOM依然可以訪問到這個元素。因此你可以通過DOM來操作它。
position
假設有一個元素你想要與它交互,但是你又不想讓它影響你的網頁布局,沒有合適的屬性可以處理這種情況(opacity和visibility影響布局mdisplay不影響布局但又無法直接交互)。在這種情況下,只能考慮將元素移出可視區域。這個辦法既不會影響布局,有可能讓元素保持可以操作。
隱藏元素的另一種方法是通過剪裁它們實現。
opacity