css解決高度自適應問題(使用flex)

2021-09-10 18:43:50 字數 1149 閱讀 4995

這篇文章通過flex來解決高度自適應問題,純用css,還是昨天這個例子

需求和上篇文章一樣,這裡再重複一遍

這個矩形的高度和瀏覽器視窗的高度相同,不能出現縱向滾動條;

綠色部分高度固定,比如50px;

紫色部分填充剩餘的高度;

html結構如下:

test

content

首先要定義乙個彈性容器,然後根據需求我們得知彈性盒子中內容是縱向排列,高度佔滿全屏,這裡我們height用100vh,(注意:height:100%等同於height:100vh,但是前者div不會撐開)

接下來直接上css**

body 

#root

header

main

ok了,寫這篇文章,是因為之前專案中遇到乙個這麼要死的布局,被需求三弄的頭痛,後面在乙個大佬的指點下選擇了flex,所以作為乙個小小的程式設計技巧留用。

另外補充一下flex的桃園三兄弟之flex-grow、flex-shrink、flex-basis詳解(這是別人部落格裡面看到,個人覺得蠻好理解弄過來的,這裡只給定**釋,具體例項,還請參考:

在flex布局中,父元素在不同寬度下,子元素是如何分配父元素空間的。

flex-basis (首先是 flex-basis ,basis英文意思是《主要成分》,所以他和width放在一起時,肯定把width乾掉,basis遇到width時就會說我才是最主要的成分,你是次要成分,所以見到我的時候你要靠邊站。)

flex-grow(其次是 flex-grow,grow英文意思是《擴大,擴充套件,增加》,這就代表當父元素的寬度大於子元素寬度之和時,並且父元素有剩餘,這時,flex-grow就會說我要成長,我要長大,怎麼樣才能成長呢,當然是分享父元素的空間了。見下面第二個屬性的內容

)flex-shrink(最後是 flex-shrink, shrink英文意思是《收縮,>,這就代表當父元素的寬度小於子元素寬度之和時,並且超出了父元素的寬度,這時,flex-shrink就會說外面的世界太苦了,我還是回到父親的懷抱中去吧!因此,flex-shrink就會按照一定的比例進行收縮。)

解決iframe高度自適應問題

最近工作中使用了讓人頭疼的iframe,碰到的最大問題是沒有好的方法使其高度自適應。尤其在頁面進行ajax後,後來google一番之後,發現iframe resizer能夠比較好的解決這個問題,而且還支援跨域訪問 使用postmessage 使用方法 在iframe resizer壓縮包的js資料夾...

css 高度自適應的問題 body高度問題

css 高度自適應的問題 物件height 100 並不能直接產生效果,是因為跟其父物件有關。center 上面的css樣式是無效的,不會產生任何效果。需要改寫 html,body center 對 center物件設定了height 100 同時設定了html與body的height 100 這就...

高度自適應問題

本文和大家重點討論一下如何控制div最小高度又div自適高度問題,如果我們需要設定乙個div高度,當裡面的東西超過這個高度時,讓這個容器自動被撐開,也就是div自適應高度。當裡面的資訊很少時候,我們就設定它乙個最小的固定高度。如何控制div最小高度又div自適高度 我們在用div布局的時候經常會遇到...