ทั้งสอง.container
และ.container-fluid
ตอบสนอง (เช่นพวกเขาเปลี่ยนเค้าโครงตามความกว้างของหน้าจอ) แต่ในรูปแบบที่แตกต่างกัน (ฉันรู้ว่าการตั้งชื่อไม่ได้ทำให้มันเป็นอย่างนั้น)
คำตอบสั้น ๆ :
.container
กำลังปรับขนาด jumpy / choppy และ
.container-fluid
คือการปรับขนาดอย่างต่อเนื่อง / ปรับความกว้าง: 100%
จากมุมมองการทำงาน:
.container-fluid
ปรับขนาดอย่างต่อเนื่องในขณะที่คุณเปลี่ยนความกว้างของหน้าต่าง / เบราว์เซอร์ตามจำนวนใด ๆ โดยไม่ต้องเว้นพื้นที่ว่างด้านข้างเป็น.container
พิเศษ (ดังนั้นการตั้งชื่อ: "ของเหลว" ซึ่งตรงข้ามกับ "ดิจิตอล", "ไม่ต่อเนื่อง", "chunked" หรือ "เชิงปริมาณ")
.container
ปรับขนาดเป็นชิ้นตามความกว้างที่แน่นอน กล่าวอีกนัยหนึ่งมันจะแตกต่างกันเฉพาะ aka "คงที่" ความกว้างช่วงที่แตกต่างกันของความกว้างหน้าจอ
ความหมาย: "ความกว้างคงที่"
คุณสามารถดูว่าการตั้งชื่อเกิดความสับสนได้อย่างไร ในทางเทคนิคเราสามารถพูดได้ว่า.container
"ความกว้างคงที่" แต่ได้รับการแก้ไขในแง่ที่ว่ามันไม่ได้ปรับขนาดในทุกความกว้างของเม็ดละเอียด จริงๆแล้วมันไม่ได้ "คงที่" ในแง่ที่ว่ามันยังคงอยู่ที่ความกว้างของพิกเซลที่กำหนดเสมอเนื่องจากมันสามารถเปลี่ยนขนาดได้
จากมุมมองพื้นฐาน:
.container-fluid
มีคุณสมบัติ CSS width: 100%;
ดังนั้นจึงปรับใหม่อย่างต่อเนื่องในทุกความกว้างของหน้าจอ
.container-fluid {
width: 100%;
}
.container
มีบางอย่างเช่น "width = 800px" (หรือ em, rem ฯลฯ ) ค่าความกว้างพิกเซลเฉพาะที่ความกว้างหน้าจอที่แตกต่างกัน หลักสูตรนี้เป็นสิ่งที่ทำให้ความกว้างขององค์ประกอบข้ามไปที่ความกว้างอื่นทันทีเมื่อความกว้างหน้าจอข้ามเกณฑ์ความกว้างของหน้าจอ และเกณฑ์นั้นจะถูกควบคุมโดยการสอบถามสื่อ CSS3 ซึ่งช่วยให้คุณสามารถใช้สไตล์ที่แตกต่างสำหรับเงื่อนไขต่าง ๆ เช่นช่วงความกว้างของหน้าจอ
@media screen and (max-width: 400px){
.container {
width: 123px;
}
}
@media screen and (min-width: 401px) and (max-width: 800px){
.container {
width: 456px;
}
}
@media screen and (min-width: 801px){
.container {
width: 789px;
}
}
เกิน
คุณสามารถสร้างองค์ประกอบที่ตอบสนองความกว้างคงที่ผ่านการสืบค้นสื่อไม่ใช่แค่.container
องค์ประกอบเนื่องจากเคียวรีสื่อเป็นวิธี.container
การที่นำมาใช้โดย bootstrap ในพื้นหลัง (ดูคำตอบของ JKillian สำหรับรหัส)