Bootstrap สร้างขึ้นบนกริด 12 คอลัมน์ เลย์เอาต์ และส่วนประกอบ
Bootstrap ใช้ประโยชน์จากองค์ประกอบ HTML และคุณสมบัติ CSS บางอย่างที่ต้องใช้ประเภทเอกสาร HTML5 รวมไว้ที่จุดเริ่มต้นของโครงการทั้งหมดของคุณ
- <!DOCTYPE html>
- <html lang = "en" >
- ...
- </html>
Bootstrap ตั้งค่าการแสดงผลแบบโกลบอล ตัวพิมพ์ และสไตล์ลิงก์ โดยเฉพาะอย่างยิ่ง เรา:
margin
ตามร่างกายbackground-color: white;
อยู่บนbody
@baseFontFamily
, @baseFontSize
, และ@baseLineHeight
คุณลักษณะเป็นฐานการพิมพ์ของเรา@linkColor
และใช้ลิงค์ที่ขีดเส้นใต้เท่านั้นบน:hover
รูปแบบเหล่านี้สามารถพบได้ในscaffolding.less
ด้วย Bootstrap 2 บล็อกการรีเซ็ตแบบเก่าได้ถูกทิ้งให้ใช้งานNormalize.cssซึ่งเป็นโปรเจ็กต์ของNicolas Gallagherที่ขับเคลื่อนHTML5 Boilerplateด้วย ในขณะที่เราใช้ Normalize ส่วนใหญ่ในreset.less ของ เรา เราได้ลบองค์ประกอบบางอย่างสำหรับ Bootstrap โดยเฉพาะ
ระบบกริด Bootstrap เริ่มต้นใช้12 คอลัมน์ทำให้คอนเทนเนอร์กว้าง 940px โดยไม่เปิดใช้งานคุณสมบัติตอบสนอง เมื่อเพิ่มไฟล์ CSS ที่ตอบสนอง ตารางจะปรับให้กว้าง 724px และ 1170px ขึ้นอยู่กับวิวพอร์ตของคุณ ด้านล่างของวิวพอร์ต 767px คอลัมน์จะกลายเป็นแบบไหลและซ้อนกันในแนวตั้ง
สำหรับเค้าโครงสองคอลัมน์อย่างง่าย ให้สร้าง a .row
และเพิ่มจำนวน.span*
คอลัมน์ที่เหมาะสม เนื่องจากตารางนี้เป็นตาราง 12 คอลัมน์ แต่ละคอลัมน์จึง.span*
ครอบคลุม 12 คอลัมน์ดังกล่าว และควรรวมกันได้ไม่เกิน 12 สำหรับแต่ละแถว (หรือจำนวนคอลัมน์ในพาเรนต์)
- < คลาสdiv = "แถว" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
จากตัวอย่างนี้ เรามี.span4
และ.span8
ทำให้มีทั้งหมด 12 คอลัมน์และเป็นแถวที่สมบูรณ์
ย้ายคอลัมน์ไปทางขวาโดยใช้.offset*
คลาส แต่ละชั้นจะเพิ่มระยะขอบด้านซ้ายของคอลัมน์โดยทั้งคอลัมน์ ตัวอย่างเช่น.offset4
ย้าย.span4
มากกว่าสี่คอลัมน์
- < คลาสdiv = "แถว" >
- <div class = "span4" > ... </div>
- <div class = "span3 offset2" > ... </div>
- </div>
หากต้องการซ้อนเนื้อหาของคุณด้วยกริดเริ่มต้น ให้เพิ่มคอลัมน์ใหม่.row
และชุดของ.span*
คอลัมน์ภายในคอลัมน์ที่มี.span*
อยู่ แถวที่ซ้อนกันควรมีชุดของคอลัมน์ที่รวมกันเป็นจำนวนคอลัมน์ของพาเรนต์
- < คลาสdiv = "แถว" >
- < คลาสdiv = "span9" >
- คอลัมน์ระดับ 1
- < คลาสdiv = "แถว" >
- <div class = "span6" > ระดับ 2 </div>
- <div class = "span3" > ระดับ 2 </div>
- </div>
- </div>
- </div>
ระบบกริดของไหลใช้เปอร์เซ็นต์แทนพิกเซลสำหรับความกว้างของคอลัมน์ มีความสามารถในการตอบสนองเช่นเดียวกับระบบกริดแบบตายตัวของเรา ทำให้มั่นใจได้ว่าสัดส่วนที่เหมาะสมสำหรับความละเอียดและอุปกรณ์ของหน้าจอหลัก
สร้างแถว "ของเหลว" โดยเปลี่ยน.row
เป็น.row-fluid
. คลาสคอลัมน์ยังคงเหมือนเดิม ทำให้ง่ายต่อการพลิกระหว่างกริดแบบตายตัวและกริดแบบไหล
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span8" > ... </div>
- </div>
ดำเนินการในลักษณะเดียวกับการชดเชยระบบกริดแบบตายตัว: เพิ่ม.offset*
ไปยังคอลัมน์ใดก็ได้เพื่อชดเชยด้วยคอลัมน์จำนวนมากนั้น
- <div class = "row-fluid" >
- <div class = "span4" > ... </div>
- <div class = "span4 offset2" > ... </div>
- </div>
การซ้อนด้วยกริดแบบไหลแตกต่างกันเล็กน้อย: จำนวนคอลัมน์ที่ซ้อนกันไม่ควรตรงกับจำนวนคอลัมน์ของผู้ปกครอง แต่จะมีการรีเซ็ตคอลัมน์ที่ซ้อนกันแต่ละระดับเนื่องจากแต่ละแถวใช้พื้นที่ 100% ของคอลัมน์หลัก
- <div class = "row-fluid" >
- < คลาสdiv = "span12" >
- ของเหลว 12
- <div class = "row-fluid" >
- <div class = "span6" > ของเหลว 6 </div>
- <div class = "span6" > ของเหลว 6 </div>
- </div>
- </div>
- </div>
จัดเตรียมเลย์เอาต์ความกว้างคงที่ทั่วไป (และตอบสนองทางเลือก) ที่<div class="container">
จำเป็น เท่านั้น
- <body>
- < คลาสdiv = "คอนเทนเนอร์" >
- ...
- </div>
- </body>
สร้างหน้าสองคอลัมน์แบบไหลได้ — ยอด<div class="container-fluid">
เยี่ยมสำหรับแอปพลิเคชันและเอกสาร
- <div class = "container-fluid" >
- <div class = "row-fluid" >
- < คลาสdiv = "span2" >
- <!--เนื้อหาแถบด้านข้าง-->
- </div>
- < คลาสdiv = "span10" >
- <!--เนื้อหาเนื้อหา-->
- </div>
- </div>
- </div>
เปิด CSS ที่ตอบสนองในโปรเจ็กต์ของคุณโดยใส่เมตาแท็กที่เหมาะสมและสไตล์ชีตเพิ่มเติมใน<head>
เอกสารของคุณ หากคุณได้รวบรวม Bootstrap จากหน้าปรับแต่ง คุณจะต้องรวมเมตาแท็กเท่านั้น
- < ชื่อ เมตา = เนื้อหา"วิวพอร์ต" = "ความกว้าง=ความกว้างของอุปกรณ์ มาตราส่วนเริ่มต้น=1.0" >
- <link href = "assets/css/bootstrap-responsive.css" rel = "stylesheet" >
หัวขึ้น!Bootstrap ไม่ได้รวมคุณสมบัติการตอบสนองตามค่าเริ่มต้นในขณะนี้ เนื่องจากไม่ใช่ทุกสิ่งที่จำเป็นต้องตอบสนอง แทนที่จะสนับสนุนให้นักพัฒนาลบคุณลักษณะนี้ เราคิดว่าเป็นการดีที่สุดที่จะเปิดใช้งานคุณลักษณะนี้ตามความจำเป็น
คิวรี่สื่ออนุญาตให้ใช้ CSS ที่กำหนดเองตามเงื่อนไขหลายประการ เช่น อัตราส่วน ความกว้าง ประเภทการแสดงผล ฯลฯ—แต่มักจะเน้นไปรอบๆmin-width
และmax-width
ใช้การสืบค้นสื่ออย่างมีความรับผิดชอบและเป็นจุดเริ่มต้นสำหรับผู้ชมบนมือถือของคุณเท่านั้น สำหรับโปรเจ็กต์ขนาดใหญ่ ให้พิจารณาฐานโค้ดเฉพาะ ไม่ใช่เลเยอร์ของคิวรีสื่อ
Bootstrap รองรับการสืบค้นสื่อจำนวนหนึ่งในไฟล์เดียว เพื่อช่วยให้โครงการของคุณเหมาะสมยิ่งขึ้นบนอุปกรณ์และความละเอียดหน้าจอที่แตกต่างกัน นี่คือสิ่งที่รวมอยู่ด้วย:
ฉลาก | ความกว้างของเค้าโครง | ความกว้างของคอลัมน์ | ความกว้างของรางน้ำ |
---|---|---|---|
จอแสดงผลขนาดใหญ่ | 1200px ขึ้นไป | 70px | 30px |
ค่าเริ่มต้น | 980px ขึ้นไป | 60px | 20px |
แท็บเล็ตแนวตั้ง | 768px ขึ้นไป | 42px | 20px |
โทรศัพท์ไปยังแท็บเล็ต | 767px และต่ำกว่า | คอลัมน์ของเหลวไม่มีความกว้างคงที่ | |
โทรศัพท์ | 480px และต่ำกว่า | คอลัมน์ของเหลวไม่มีความกว้างคงที่ |
- /* เดสก์ท็อปขนาดใหญ่ */
- @media ( ความกว้างต่ำสุด: 1200px ) { ... }
- /* แท็บเล็ตแนวตั้งเป็นแนวนอนและเดสก์ท็อป */
- @media ( ความกว้างต่ำสุด: 768px ) และ( ความกว้างสูงสุด: 979px ) { ... }
- /* โทรศัพท์แนวนอนเป็นแท็บเล็ตแนวตั้ง */
- @media ( ความกว้างสูงสุด: 767px ) { ... }
- /* โทรศัพท์แนวนอนและลง */
- @media ( ความกว้างสูงสุด: 480px ) { ... }
เพื่อการพัฒนาที่เป็นมิตรกับอุปกรณ์พกพาที่รวดเร็วขึ้น ให้ใช้คลาสยูทิลิตี้เหล่านี้เพื่อแสดงและซ่อนเนื้อหาตามอุปกรณ์ ด้านล่างนี้คือตารางของคลาสที่มีอยู่และผลกระทบต่อเค้าโครงคิวรีสื่อที่กำหนด (ติดป้ายกำกับโดยอุปกรณ์) สามารถพบได้responsive.less
ใน
ระดับ | โทรศัพท์767px และต่ำกว่า | แท็บเล็ต979px ถึง 768px | เดสก์ท็อปค่าเริ่มต้น |
---|---|---|---|
.visible-phone |
มองเห็นได้ | ที่ซ่อนอยู่ | ที่ซ่อนอยู่ |
.visible-tablet |
ที่ซ่อนอยู่ | มองเห็นได้ | ที่ซ่อนอยู่ |
.visible-desktop |
ที่ซ่อนอยู่ | ที่ซ่อนอยู่ | มองเห็นได้ |
.hidden-phone |
ที่ซ่อนอยู่ | มองเห็นได้ | มองเห็นได้ |
.hidden-tablet |
มองเห็นได้ | ที่ซ่อนอยู่ | มองเห็นได้ |
.hidden-desktop |
มองเห็นได้ | มองเห็นได้ | ที่ซ่อนอยู่ |
ใช้บนพื้นฐานที่จำกัดและหลีกเลี่ยงการสร้างไซต์เดียวกันในเวอร์ชันที่ต่างกันโดยสิ้นเชิง ให้ใช้สิ่งเหล่านี้เพื่อเสริมการนำเสนอของอุปกรณ์แต่ละเครื่องแทน ไม่ควรใช้ยูทิลิตีแบบตอบสนองกับตาราง และไม่รองรับด้วยเหตุดังกล่าว
ปรับขนาดเบราว์เซอร์ของคุณหรือโหลดบนอุปกรณ์ต่าง ๆ เพื่อทดสอบคลาสข้างต้น
เครื่องหมายถูกสีเขียวแสดงว่าคลาสปรากฏในวิวพอร์ตปัจจุบันของคุณ
ที่นี่ เครื่องหมายถูกสีเขียวแสดงว่าคลาสถูกซ่อนอยู่ในวิวพอร์ตปัจจุบันของคุณ