RWD 圖片寫於 HTML 與 CSS 的用法、background-size
屬性、background-position
屬性、RWD 圖片最小高度 min-height
設定
如有後台可自行上傳圖片的網站,先設定圖片的css reset可避免使用者上傳解析度太大的圖片,導致破版。
img{
max-width:100%; /*不使用width:100% 是因避免圖片解析度不好,隨父元素被放大時會糊掉*/
height:auto;
}
環境: 圖片位置寫於html中 / width: 100% 與 max-width:100%差異 範例
環境: 圖片位置寫於css中
顯示方式: banner圖片向內縮,是以截圖方式截掉圖片 範例
.banner{
background: url(圖片路徑) no-repeat;
height: 420px;/*自訂*/
background-position:center center;
}
/*
1.banner沒有寫寬度,背景圖尺寸會隨著父元素
2.center 背景圖置中
3.background-size可試著寫入cover(背景圖小於容器時會放大填滿容器) 或 contain(背景圖有設定寬高,會自適應在設定的寬高內)
*/
註:圖片放置css屬性的background內參考文章 w3schools- RWD Images
background-position: center center;
背景圖片的寬度與高度、根據容器(如 DIV 區塊)大小而調整背景圖片的百分比、將背景圖片放大並填滿整個容器區域或是自動縮小背景圖片的大小使其可以完整呈現於容器的範圍內
background-size:contain;
background-size:cover;
環境 : 大解析度寫到小解析度
@media(max-width:900px){}
把原先高度拿掉,設定 min-height
才會有反應。<div class="box">
<div class="inbox"></div>
</div>
*,*:before,*:after{box-sizing: border-box;}
.box{
max-width:700px;
margin: 0 auto;
border:5px solid #fe5f55;
}
.inbox{
background: url(https://upload.cc/i1/2019/09/25/JqCLzk.jpg
) no-repeat;
width: 100%;
height: 350px;
background-size:cover;
background-position:center center;
}
@media(max-width:900px){
.inbox{
height:auto;/*取代 斷點900px以上設定的 350px高度,不然下方的最小高度500px會無效*/
min-height:500px;
}
}
參考文章