หน่วยพื้นที่แสดงผล: vw vh และ dvh
กำหนดขนาดองค์ประกอบโดยอ้างอิงพื้นที่แสดงผลของเบราว์เซอร์ด้วยหน่วย vw, vh และ dvh รุ่นใหม่
หน่วยพื้นที่แสดงผล: vw vh และ dvh เป็นบทเรียน CSS Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน CSS Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส CSS Academy มีบทเรียนทั้งหมด 4 บทเรียน
หน่วยวิวพอร์ตคืออะไร
หน่วยวิวพอร์ตจะอิงตามขนาดของวิวพอร์ตเบราว์เซอร์ (พื้นที่ที่มองเห็นได้ของหน้าต่างเบราว์เซอร์) หน่วยเหล่านี้ช่วยให้เลย์เอาต์และตัวอักษรปรับขนาดตามพื้นที่หน้าจอที่มีอยู่
vw — ความกว้างของวิวพอร์ต
1vw = 1% ของความกว้างวิวพอร์ต 100vw เติมเต็มความกว้างของวิวพอร์ตทั้งหมด มีประโยชน์สำหรับองค์ประกอบที่ต้องการเต็มความกว้างโดยไม่เกิดความยุ่งยากจากการใช้เปอร์เซ็นต์
<div class="hero"></div>
vh — ความสูงของวิวพอร์ต
1vh = 1% ของความสูงวิวพอร์ต 100vh เติมเต็มความสูงของวิวพอร์ตทั้งหมด นิยมใช้กับส่วนฮีโร่และหน้าต่างโมดัลที่ต้องเต็มหน้าจอ
<div class="fullscreen">100vh fills the viewport height</div>
ปัญหา 100vh บนอุปกรณ์เคลื่อนที่
บนเบราว์เซอร์ของอุปกรณ์เคลื่อนที่ ความสูงของวิวพอร์ตจะเปลี่ยนเมื่อส่วนติดต่อของเบราว์เซอร์ (แถบที่อยู่) แสดงหรือซ่อนระหว่างการเลื่อน 100vh อาจรวมหรือไม่รวมส่วนติดต่อของเบราว์เซอร์อย่างไม่สม่ำเสมอ ทำให้เนื้อหาบางส่วนถูกซ่อน
dvh — ความสูงวิวพอร์ตแบบไดนามิก
dvh (ความสูงวิวพอร์ตแบบไดนามิก) จะปรับปรุงค่าแบบไดนามิกให้ตรงกับความสูงที่มองเห็นได้จริงหลังจากส่วนติดต่อของเบราว์เซอร์ปรับเปลี่ยน จึงแก้ปัญหา 100vh บนอุปกรณ์เคลื่อนที่ได้
<div class="mobile-hero">Dynamic viewport height (100dvh)</div>
svh และ lvh
CSS ยังมี svh (ความสูงวิวพอร์ตขนาดเล็ก — ไม่รวมส่วนติดต่อของเบราว์เซอร์เสมอ) และ lvh (ความสูงวิวพอร์ตขนาดใหญ่ — ราวกับว่าส่วนติดต่อถูกซ่อน) ซึ่งช่วยให้ควบคุมพฤติกรรมของวิวพอร์ตบนอุปกรณ์เคลื่อนที่ได้อย่างละเอียด
ตัวอักษรแบบลื่นไหลด้วย vw
การใช้ vw กับขนาดแบบอักษรจะทำให้ตัวอักษรปรับขนาดตามหน้าจอ:
<h1>Fluid Heading</h1>
ข้อจำกัดของความกว้างวิวพอร์ต
100vw จะรวมความกว้างของแถบเลื่อนบนคอมพิวเตอร์ตั้งโต๊ะด้วย ซึ่งทำให้เกิดเนื้อหาล้นในแนวนอนได้หากใช้อย่างไม่ระมัดระวัง ควรใช้ width: 100% กับองค์ประกอบบล็อก และสงวน vw ไว้สำหรับกรณีเฉพาะ
vmin และ vmax
1vmin = 1% ของมิติวิวพอร์ตที่เล็กกว่า (ความกว้างหรือความสูง) 1vmax = 1% ของมิติที่ใหญ่กว่า มีประโยชน์สำหรับคอนเทนเนอร์สี่เหลี่ยมจัตุรัสที่ปรับตามการเปลี่ยนแนวหน้าจอ
<div class="square"></div>
svw, lvw, dvw — รูปแบบความกว้าง
เช่นเดียวกับรูปแบบความสูง CSS มี svw, lvw และ dvw สำหรับความกว้าง รูปแบบไดนามิก (dvw, dvh) มีประโยชน์มากที่สุดบนอุปกรณ์เคลื่อนที่
รูปแบบการใช้งานจริง
รูปแบบการใช้หน่วยวิวพอร์ตที่พบบ่อย:
min-height: 100dvh— ส่วนเต็มหน้าจอที่ปลอดภัยบนอุปกรณ์เคลื่อนที่height: 100svh— แผงส่วนติดต่อผู้ใช้แบบคงที่font-size: clamp(1rem, 2.5vw, 2rem)— หัวข้อที่ปรับขนาดลื่นไหลwidth: min(800px, 90vw)— คอนเทนเนอร์ที่มีความกว้างปลอดภัย
ตรวจสอบอย่างรวดเร็ว
เหตุใดจึงควรใช้ dvh แทน vh สำหรับส่วนเต็มหน้าจอบนอุปกรณ์เคลื่อนที่
สรุปทบทวน
vw และ vh มีค่าเท่ากับ 1% ของความกว้างหรือความสูงวิวพอร์ต บนอุปกรณ์เคลื่อนที่ vh ไม่น่าเชื่อถือเนื่องจากส่วนติดต่อของเบราว์เซอร์ ให้ใช้ dvh สำหรับเลย์เอาต์เต็มหน้าจอแบบไดนามิกที่แม่นยำบนอุปกรณ์เคลื่อนที่ ส่วน vmin และ vmax จะตอบสนองต่อมิติวิวพอร์ตที่เล็กกว่าหรือใหญ่กว่า
เรียนรู้ CSS ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 40
- บทเรียน
- 159
คำถามที่พบบ่อย
บทเรียน “หน่วยพื้นที่แสดงผล: vw vh และ dvh” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “หน่วยพื้นที่แสดงผล: vw vh และ dvh” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส CSS Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส CSS Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “หน่วยพื้นที่แสดงผล: vw vh และ dvh”
กำหนดขนาดองค์ประกอบโดยอ้างอิงพื้นที่แสดงผลของเบราว์เซอร์ด้วยหน่วย vw, vh และ dvh รุ่นใหม่ คุณปฏิบัติ CSS Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน CSS Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน CSS Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “หน่วยพื้นที่แสดงผล: vw vh และ dvh” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน CSS Academy นี้ได้ไหม
ได้ บทเรียน CSS Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- หน่วยสัมบูรณ์: px pt และ cm
- หน่วยสัมพัทธ์: em และ rem
- หน่วยพื้นที่แสดงผล: vw vh และ dvh
- ฟังก์ชัน Min Max และ Clamp