โครงร่างเว็บไซต์แบบสามคอลัมน์ใน CSS

ตอนนี้เรามาสร้างโครงร่างแบบสามคอลัมน์กัน นี่คือตัวอย่างของสิ่งที่เราควรได้:

เริ่มต้นด้วยการเขียนโครงสร้างของเว็บไซต์:

html<div id="wrapper">
  <div id="header">
    ส่วนหัว
  </div>
  <div id="container">
    <div id="left">
      แถบด้านซ้าย
    </div>
    <div id="content">
      เนื้อหา
    </div>
    <div id="right">
      แถบด้านขวา
    </div>
  </div>
  <div id="footer">
    ส่วนท้าย
  </div>
</div>

มากำหนดความกว้างของ wrapper และจัดให้อยู่กึ่งกลาง:

css#wrapper {
  width: 1100px;
  margin: 30px auto;
  border: 1px solid black;
}

จัดบล็อกของ container ให้เรียงอยู่ในแถวเดียวกัน:

css#container {
  display: flex;
}

มากำหนดความกว้างของบล็อกต่างๆ เพื่อให้เมื่อรวมกันแล้วได้ความกว้างของ wrapper:

css#content {
  width: 700px;
}
#left {
  width: 200px;
}
#right {
  width: 200px;
}

ทีนี้มาเพิ่ม margin โดยหักความกว้างออกจากเนื้อหา:

css#content {
  width: 660px;
}
#left {
  width: 200px;
  margin-right: 20px;
}
#right {
  width: 200px;
  margin-left: 20px;
}

มาเพิ่มสไตล์ที่เหลือ:

css#content {
  width: 660px;
  height: 700px;
  padding: 20px;
  border: 1px solid black;
}
#left {
  width: 200px;
  margin-right: 20px;
  padding: 20px;
  border: 1px solid black;
}
#right {
  width: 200px;
  margin-left: 20px;
  padding: 20px;
  border: 1px solid black;
}

มาเขียนโค้ดสุดท้าย:

html<div id="wrapper">
  <div id="header">
    ส่วนหัว
  </div>
  <div id="container">
    <div id="left">
      แถบด้านซ้าย
    </div>
    <div id="content">
      เนื้อหา
    </div>
    <div id="right">
      แถบด้านขวา
    </div>
  </div>
  <div id="footer">
    ส่วนท้าย
  </div>
</div>
css* {
  box-sizing: border-box;
}

#wrapper {
  width: 1100px;
  margin: 30px auto;
  border: 1px solid black;
}
#header {
  height: 200px;
  padding: 20px;
  border: 1px solid black;
}
#container {
  display: flex;
}
#content {
  width: 660px;
  height: 700px;
  padding: 20px;
  border: 1px solid black;
}
#left {
  width: 200px;
  margin-right: 20px;
  padding: 20px;
  border: 1px solid black;
}
#right {
  width: 200px;
  margin-left: 20px;
  padding: 20px;
  border: 1px solid black;
}
#footer {
  height: 200px;
  padding: 20px;
  border: 1px solid black;
}
Задание 1
Задание 2
Задание 3