css 高度隨寬度比例變化

2021-10-03 06:19:01 字數 1030 閱讀 2294

方案一:

padding實現

原理:乙個元素的 padding,如果值是乙個百分比,那這個百分比是相對於其父元素的寬度而言的,padding-bottom 也是如此。

使用 padding-bottom 來代替 height 來實現高度與寬度成比例的效果,將 padding-bottom設定為想要實現的 height 的值。同時將

其 height 設定為 0 以使元素的「高度」等於 padding-bottom 的值,從而實現需要的效果。

上例寬高比是1比1,實現的是正方形,並且根據父級盒子寬度實現等比縮放

方案二:

乙個隱藏的來實現

原理:div容器如果不給定高度,它的高度會隨著容器內部的元素變化而撐大,這個時候,我們在容器內部新增一張符合我們寬高比例的,給設定寬度100%;高度auto,我們知道只設定寬度的話,高度會隨寬度來進行比例變化,自動縮放,這樣我們內部的子容器的高度也就會按照比例縮放了。當然這個img你可以佔位隱藏,也可以用別的盒子覆蓋上。

#container

.attr

.attr img

這個方法不需要考慮任何相容性,pc移動完美執行。除了增加了乙個dom結構,但是乙個頁面成百上千的**來說,不值一提。

如果你覺得增加img標籤多發了http請求,那麼base64編碼可以解決這個問題,由於我們的的只需要乙個形狀而已,所

以可以大膽的壓縮,然後編碼,連http請求都省了。

方案三:

vw,vh

css3的新單位(css3**好~),我們將父容器的寬度和高度定義為相同的vw,這樣父容器的高度和寬度就是相同值,這個時候,子容器的寬高值設為百分比,不管父容器大小如何變,子容器的高度和寬度比都是不會變的

單位 說明

vw 相對於視窗的寬度

vh 相對於視窗的高度

vmin 相對於視口的寬度或高度中較小的那個被均分為100單位的vmin

vmax 相對於視口的寬度或高度中較大的那個被均分為100單位的vmax

.childbox 上面也是實現了乙個寬高相對螢幕寬度20%的正方形

css高度自適應 父元素隨子元素變化

day16 1 min height ie6不相容問題 正常專案中 最小高度直接用min height即可。如果考慮相容 min height ie6不相容。ie6預設把height解析成最小高度。若height 和min height同時出現,ie6執行的事height固定高度。最小高度的相容設定...

控制項大小隨視窗等比例變化

第一步 oninitdialog裡儲存對話方塊及其所有子窗體的rect區域 在主視窗類中新增成員變數 clistm listrect成員變數 crect rect getwindowrect rect m listrect.addtail rect 對話方塊的區域 cwnd pwnd getwind...

CSS 寬度與高度

高度與字型 內聯元素 空格 內聯元素之間 no break space 兩個inline元素之間有任何回車,tab,換行或其他任意字元,都會變成空格。因而導航欄li元素橫排不要使用inline block方法,用float 清除浮動。中文的對齊方式技巧 文字垂直居中 用line height加pad...