1. 程式人生 > >圖片加載防止窗口抖動,又可以等比例縮放

圖片加載防止窗口抖動,又可以等比例縮放

窗口 head width 方法 wid nbsp image ima add

由於html加載最後才會加載圖片,所以如果沒有提前設置高度的話,就會出現窗口抖動,用戶體驗很不好. 如果固定死高度的話,又不能於寬等比例縮放。 解決辦法: 已知原圖的寬高比例 例如:此圖寬500,高321,高/寬為64.2% 技術分享圖片 方法一: 不考慮兼容性(即手機端開發): 直接設置height: 64.2vw;,意思是高度設置為視窗寬度的64.2%
<style>
.img-content{
width: 100%;
height: 64.2vw;
overflow: hidden;
}
img{
width: 100%;
}
</style>
</head>
<body
> <div class="img-content"> <img src="./hai.jpg" alt=""> </div> <div>text</div> </body>

方法二
.img-content{
width: 100%;
height: 0;
overflow: hidden;
padding-bottom: 64.2%;
}
img{
width: 100%;
}
</style>
</head>
<body>
<div class="img-content">
<img src="./hai.jpg" alt=""> </div> <div>text</div> </body>

由於padding的大小是根據父級元素的寬來規定大小,所以上面設置padding-bottom為64.5%是相對於整個body寬度(100%),又因為默認box-sizing為content-box,所以寬高是元素本身的寬高,設置了高度為零,高度就由padding-bottom撐開。

題外:

由第二種方法可以聯想到我們要做一個正方形,要怎麽實現

width: 30%;padding-top: 30%;height: 0; width的比例等於padding-top的比例即可

圖片加載防止窗口抖動,又可以等比例縮放