เครื่องมือสร้าง CSS Grid
CSS Grid เป็นวิธีมาตรฐานในการสร้างเลย์เอาต์ 2 มิติ แต่ไวยากรณ์ของคอนเทนเนอร์ลืมง่าย เครื่องมือนี้เขียนกฎคอนเทนเนอร์ให้คุณ: จำนวนคอลัมน์ความกว้างเท่ากันแบบคงที่ ระยะห่างระหว่างแทร็ก และมีเดียเควอรีที่สลับเป็นคอลัมน์ auto-fit เมื่อความกว้างต่ำกว่าค่าต่ำสุด เพื่อให้เลย์เอาต์อ่านง่ายบนจอเล็ก ผลลัพธ์เป็น CSS คอนเทนเนอร์ล้วนๆ ส่วนการวางองค์ประกอบยังอยู่ในสไตล์ชีตของคุณเอง
วิธีสร้างกริด
-
1
กำหนดจำนวนคอลัมน์
ระหว่าง 1 ถึง 12 แทร็กความกว้างเท่ากัน
-
2
กำหนดความกว้างต่ำสุดของคอลัมน์
ต่ำกว่านี้กริดจะสลับเป็น auto-fit เพื่อให้ทุกคอลัมน์รักษาขนาดต่ำสุดที่ใช้งานได้
-
3
กำหนดระยะห่าง
ช่องว่างระหว่างคอลัมน์และแถว
-
4
สร้าง CSS
เครื่องมือจะเขียนกฎคอนเทนเนอร์พร้อมทางเลือกแบบตอบสนอง
-
5
คัดลอกโค้ด
วางกฎคอนเทนเนอร์ในสไตล์ชีต แล้ววางองค์ประกอบด้วยกฎ `grid-column` / `grid-row` ของคุณเอง
คอนเทนเนอร์ที่สร้างขึ้น
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
@media (max-width: 660px) {
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
repeat(3, minmax(0, 1fr)): สามคอลัมน์แบ่งความกว้างที่เหลือเท่ากัน1frคือหนึ่งส่วนของพื้นที่ที่เหลือ และminmax(0, 1fr)ยอมให้คอลัมน์หดเล็กกว่าขนาดของเนื้อหาgap: ระยะห่างระหว่างแต่ละแทร็ก- มีเดียเควอรีสลับเป็น
repeat(auto-fit, minmax(220px, 1fr))ซึ่งสร้างคอลัมน์ให้มากที่สุดเท่าที่พอ โดยแต่ละคอลัมน์กว้างอย่างน้อย 220px จุดแบ่งคือจำนวนคอลัมน์คูณกับความกว้างต่ำสุด (ขั้นต่ำ 120px) ดังนั้นบนจอเล็กกริดจะเลื่อนลงแถวใหม่แทนที่จะถูกบีบ
หน่วย fr
fr แปลว่า “หนึ่งส่วนของพื้นที่ที่เหลือ”: หลังจากหักแทร็กขนาดคงที่แล้ว พื้นที่ที่เหลือจะถูกหารด้วยจำนวนหน่วย fr ทั้งหมด
grid-template-columns: 200px 1fr 2fr;
บนคอนเทนเนอร์กว้าง 1000px คอลัมน์แรกกินพื้นที่ 200px และอีก 800px ที่เหลือแบ่งกัน 1:2 คือ 267px และ 533px
auto-fill กับ auto-fit
auto-fill: สร้างแทร็กว่างสำรองเมื่อมีองค์ประกอบไม่พอauto-fit: ยุบแทร็กว่างให้เป็นศูนย์ องค์ประกอบที่เหลือจึงยืดเต็มแถว
ทางเลือกแบบตอบสนองใช้ auto-fit ซึ่งตรงกับที่กริดการ์ดต้องการ: แถวดูเต็มอยู่เสมอ
คอลัมน์ความกว้างต่างกัน
เครื่องมือสร้างคอลัมน์เท่ากัน แก้ไขผลลัพธ์เพื่อผสมขนาด: grid-template-columns: 200px 1fr 2fr; ให้แถบข้างแบบคงที่และสองคอลัมน์ยืดหยุ่นในอัตรา 1:2 สำหรับพื้นที่ที่มีชื่อ (grid-template-areas) หรือการวางแบบระบุตำแหน่ง (grid-column: 1 / 3) ให้เพิ่มกฎเหล่านี้เองบนคอนเทนเนอร์ที่สร้างไว้
Grid กับ Flexbox
- Grid: เลย์เอาต์ 2 มิติแบบระบุชัดเจนด้วยแทร็ก เหมาะเมื่อเลย์เอาต์มีโครงสร้างทั้งแถวและคอลัมน์ (โครงหน้าของหน้าเพจ แกลเลอรี แดชบอร์ด)
- Flexbox: การจัดเรียง 1 มิติตามแกนเดียว เหมาะเมื่อองค์ประกอบไหลตามธรรมชาติ (แถบนำทาง แถวปุ่ม)
เลย์เอาต์จริงมักผสมทั้งสอง: Grid สำหรับโครงหน้าของหน้าเพจ และ Flexbox ภายในคอมโพเนนต์
ข้อผิดพลาดที่พบบ่อย
- ลืม
min-width: 0บนองค์ประกอบลูก: องค์ประกอบกริดใช้ความกว้างต่ำสุดของเนื้อหาเป็นค่าเริ่มต้น ทำให้คอลัมน์frหดเล็กกว่าคำยาวที่สุดไม่ได้ ใส่min-width: 0ให้ลูกเพื่อให้หดได้ - ซ้อนกันโดยไม่มี
display: grid: ลูกของกริดไม่ได้เป็นกริดเองจนกว่าคุณจะประกาศ
คำถามที่พบบ่อย
ช่วยปกป้องเลย์เอาต์บนจอเล็ก มีเดียเควอรีที่สร้างขึ้นจะสลับเป็น repeat(auto-fit, minmax(ความกว้าง, 1fr)) ทุกคอลัมน์จึงคงความกว้างขั้นต่ำนั้นไว้ และกริดจะเพิ่มแถวแทนการบีบคอลัมน์
เครื่องมือสร้างคอลัมน์เท่ากัน แก้ไขบรรทัด grid-template-columns ในผลลัพธ์เพื่อผสมขนาด เช่น 1fr 2fr 1fr สำหรับคอลัมน์กลางกว้าง หรือ 200px 1fr สำหรับแถบข้างคงที่
ส่วนใหญ่เพราะองค์ประกอบมีค่าเริ่มต้น min-width: auto ซึ่งเท่ากับความกว้างต่ำสุดของเนื้อหา ใส่ min-width: 0 ให้องค์ประกอบกริดเพื่อให้หดเข้าไปในเซลล์ได้
Grid เมื่อเลย์เอาต์มีโครงสร้างทั้งแถวและคอลัมน์ (เลย์เอาต์หน้าเพจ แกลเลอรีภาพ แดชบอร์ด) Flexbox เมื่อองค์ประกอบไหลไปตามแกนเดียว (แถบนำทาง แถวปุ่ม กองช่องฟอร์ม)
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
เครื่องมือตรวจสอบหมายเลขโทรศัพท์
ตรวจสอบโครงสร้างหมายเลขตามประเทศ พร้อมดูภูมิภาค ประเภท และรูปแบบ E.164 ระหว่างประเทศ ในประเทศ และ RFC 3966