การออกแบบเว็บไซต์ที่ตอบสนองได้ - รูปภาพ
- หน้าก่อน การค้นหาสื่อ RWD
- หน้าต่อไป วิดีโอ RWD
ใช้คุณสมบัติ width
ถ้า width
คุณสมบัติตั้งค่าเป็นเปอร์เซ็น และความสูงตั้งค่าเป็น "auto" ภาพจะเติมตัวเองตามการปรับขนาด:
ตัวอย่าง
img { width: 100%; height: auto; }
โปรดทราบว่าในตัวอย่างที่กล่าวข้างต้น ภาพสามารถขยายตัวเกินขนาดต้นตอของมัน. ในหลายๆครั้งแล้ว ทางเลือกที่ดีขึ้นคือใช้ max-width
คุณสมบัติ。
ใช้คุณสมบัติ max-width
ถ้าจะตั้งค่าคุณสมบัติ max-width ให้เป็น 100% ภาพจะถูกย่อตัวตามความจำเป็น แต่จะไม่ขยายตัวเกินขนาดต้นตอ:
ตัวอย่าง
img { max-width: 100%; height: auto; }
ภาพพื้นหลัง
ภาพพื้นหลังยังสามารถตอบสนองการปรับขนาดและสัดส่วนตัวเองได้:
นี่คือสามวิธีที่เราแสดงให้เห็น:
1. ถ้าจะ background-size
属性设置为 "contain" จะทำให้ภาพพื้นหลังขยายตัว และพยายามที่จะตรงกับโดเมนเน็ต อย่างไรก็ตามภาพจะเหมือนกันในสัดส่วน (สัดส่วนระหว่างความสูงและความกว้างของภาพ):
這是 CSS 代码:
ตัวอย่าง
div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-repeat: no-repeat; background-size: contain; border: 1px solid red; }
2. 如果將 background-size
屬性設置為 "100% 100%",則背景圖像將拉伸以覆蓋整個內容區域:
這是 CSS 代码:
ตัวอย่าง
div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-size: 100% 100%; border: 1px solid red; }
3. 如果 background-size
屬性設置為 "cover",則背景圖像將縮放以覆蓋整個內容區域。請注意,"cover" 值保持長寬比,且可能會裁剪背景圖像的某部分:
這是 CSS 代码:
ตัวอย่าง
div { width: 100%; height: 400px; background-image: url('img_flowers.jpg'); background-size: cover; border: 1px solid red; }
為不同設備準備不同圖像
大圖像在大型計算機屏幕上可以完美顯示,但在小型設備上就沒用了。為什麼在不得不縮小圖像時又加載大圖像呢?為了減少負擔或出於任何其他原因,您可以使用媒體查詢在不同的設備上顯示不同的圖像。
這是一幅大圖像和一幅小圖像,會在不同的設備上顯示:
ตัวอย่าง
/* 對於小於 400 像素的寬度: */ body { background-image: url('img_smallflower.jpg'); } /* 對於 400 像素或更大的寬度: */ @media only screen and (min-width: 400px) { body { background-image: url('img_flowers.jpg'); } }
您可以使用媒體查詢 min-device-width
而不是 min-width
來檢查設備寬度,而不是瀏覽器寬度。然後,當您調整瀏覽器窗口的大小時,圖像將不會變化:
ตัวอย่าง
/* 對於小於 400 像素的設備: */ body { background-image: url('img_smallflower.jpg'); } /* 對於 400 像素及更大的設備: */ @media only screen and (min-device-width: 400px) { body { background-image: url('img_flowers.jpg'); } }
HTML5 <picture> 元素
HTML5 引入了 <picture>
元素,該元素使您可以定義多幅圖像。
瀏覽器支持
38.0 | 13 | 38.0 | 9.1 | 25.0 |
<picture>
元素的作用類似於 <video>
和 <audio>
要素。我們設置了不同的來源,而匹配優先權的第一個來源是正在使用的來源:
ตัวอย่าง
<picture> <source srcset="img_smallflower.jpg" media="(max-width: 400px)"> <source srcset="img_flowers.jpg"> <img src="img_flowers.jpg" alt="Flowers"> </picture>
srcset
ขอบเขตเป็นความจำเป็น มันกำหนดแหล่งข้อมูลของภาพ
media
ขอบเขตเป็นที่เลือกใช้ มันยอมรับคุณสมบัติที่สามารถใช้ได้ใน CSS @media กฎ ที่หาได้ใน media query
คำแนะนำ:คุณควรจะใส่ <picture>
การกำหนดองค์ประกอบโดยเบราเซอร์ <img>
องค์ประกอบ
- หน้าก่อน การค้นหาสื่อ RWD
- หน้าต่อไป วิดีโอ RWD