html Responsive Images <img>

img element srcset, sizes attributes

將一幅大尺寸的圖轉成數個降低尺寸的圖,由瀏覽器依照不同大小的 viewport 決定取用更適合的尺寸的圖。

圖例:展示一幅很大尺寸的圖有指定 srcset

sizes 判斷寬度可借用 css 單位 vw ,簡化很多。 vw 👉 viewport width ; 100v 表示 100% viewport ,當然可以是 90vw, 75vw,… 。

例示 html 片段。

<img srcset="./images/flower2_300.jpg 300w,
             ./images/flower2_604.jpg 604w,
             ./images/flower2_839.jpg 839w,
             ./images/flower2_1100.jpg 1100w,
             ./images/flower2.jpg 2560w"
     sizes="(max-width:1200px) 100vw, 2560px"
     src="./images/flower2.jpg"
     alt="rose">

另可參閱 <picture> 對於 responsive image 的使用與處理概念。