Bird
Raised Fist0
Bootsrapmarkup~3 mins

Why Mixing column widths in Bootsrap? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

Discover how to build layouts that adapt perfectly without endless resizing headaches!

The Scenario

Imagine you are building a webpage layout with several sections side by side. You try to set each section's width by hand using fixed pixel sizes or percentages.

The Problem

When you change one section's width, you must recalculate and adjust all others manually. This is slow, error-prone, and breaks easily on different screen sizes.

The Solution

Bootstrap's grid system lets you mix column widths easily by assigning column classes. It automatically handles spacing and resizing for you.

Before vs After
✗ Before
<div style="width: 200px; float: left;">Left</div><div style="width: 400px; float: left;">Right</div>
✓ After
<div class='row'>
  <div class='col-4'>Left</div>
  <div class='col-8'>Right</div>
</div>
What It Enables

You can create flexible, responsive layouts that adjust smoothly on any device without tedious math.

Real Life Example

On a product page, you can have a smaller image column next to a larger description column that resizes nicely on phones and desktops.

Key Takeaways

Manual width setting is hard to maintain and not responsive.

Bootstrap columns let you mix widths easily with simple classes.

This creates flexible, device-friendly layouts quickly.

Practice

(1/5)
1. What does the class col-6 mean in Bootstrap's grid system?
easy
A. The column is hidden on screens smaller than 6 inches.
B. The column takes up 6 pixels width.
C. The column takes up half the row width (6 out of 12 parts).
D. The column is fixed to 6 rem units wide.

Solution

  1. Step 1: Understand Bootstrap grid basics

    Bootstrap divides a row into 12 equal parts for layout.
  2. Step 2: Interpret col-6 meaning

    The class col-6 means the column uses 6 of those 12 parts, which is half the row width.
  3. Final Answer:

    The column takes up half the row width (6 out of 12 parts). -> Option C
  4. Quick Check:

    12 parts total, 6 parts used = half width [OK]
Hint: Remember: col-6 means 6/12 width, or half the row [OK]
Common Mistakes:
  • Thinking col-6 means 6 pixels wide
  • Confusing col-6 with fixed width units
  • Assuming col-6 hides the column
2. Which of the following is the correct way to make a column take 4 parts on medium screens and 12 parts on small screens?
easy
A. <div class='col-12 col-md-4'></div>
B. <div class='col-lg-4 col-12'></div>
C. <div class='col-4 col-md-12'></div>
D. <div class='col-md-12 col-4'></div>

Solution

  1. Step 1: Understand responsive classes order

    Bootstrap applies classes from smallest to largest screen sizes. The class without breakpoint applies to all sizes unless overridden.
  2. Step 2: Choose correct class order

    To have 12 parts on small screens and 4 parts on medium and up, use col-12 for small and col-md-4 for medium screens.
  3. Final Answer:

    <div class='col-12 col-md-4'></div> -> Option A
  4. Quick Check:

    Small = col-12, Medium = col-md-4 [OK]
Hint: Put smaller screen class first, then medium with breakpoint [OK]
Common Mistakes:
  • Reversing the order of classes
  • Using wrong breakpoint prefixes
  • Assuming col-4 applies to small screens
3. Given this HTML snippet:
<div class='row'>
  <div class='col-3'>A</div>
  <div class='col-6'>B</div>
  <div class='col-3'>C</div>
</div>

How will the columns appear on a large screen?
medium
A. Three columns stacked vertically, each full width
B. Three columns: A (25%), B (50%), C (25%) width in one row
C. Two columns: A and B share one row, C on next row
D. Columns A and C are hidden, only B shows

Solution

  1. Step 1: Add column widths

    Columns have classes col-3, col-6, and col-3, which add up to 3+6+3=12 parts.
  2. Step 2: Understand layout on large screens

    Since total is 12, all columns fit in one row side by side with widths 25%, 50%, and 25% respectively.
  3. Final Answer:

    Three columns: A (25%), B (50%), C (25%) width in one row -> Option B
  4. Quick Check:

    3+6+3=12 parts, fits in one row [OK]
Hint: Sum col-* numbers; if 12, columns share one row [OK]
Common Mistakes:
  • Thinking columns stack vertically by default
  • Assuming columns overflow to next row
  • Confusing col-3 with 3 pixels
4. Identify the error in this Bootstrap code:
<div class='row'>
  <div class='col-5'>X</div>
  <div class='col-8'>Y</div>
</div>
medium
A. The total column width exceeds 12, causing layout issues.
B. The class names should be col-6 and col-6 instead.
C. The row class is missing a container wrapper.
D. The columns need to use col-md-* classes instead.

Solution

  1. Step 1: Calculate total column width

    Adding col-5 and col-8 gives 5 + 8 = 13, which is more than 12.
  2. Step 2: Understand Bootstrap grid limits

    Bootstrap rows can only hold 12 parts per row. Exceeding 12 causes the second column to wrap or break layout.
  3. Final Answer:

    The total column width exceeds 12, causing layout issues. -> Option A
  4. Quick Check:

    5 + 8 = 13 > 12 breaks grid [OK]
Hint: Sum col-* numbers; must not exceed 12 per row [OK]
Common Mistakes:
  • Ignoring total width exceeding 12
  • Thinking col-5 and col-8 fit in one row
  • Assuming container is mandatory for row
5. You want a layout with three columns on large screens: left column 3 parts, middle column 6 parts, right column 3 parts. On small screens, all columns should stack full width. Which Bootstrap classes achieve this?
hard
A. <div class='col-3 col-lg-12'> for left and right, <div class='col-6 col-lg-12'> for middle
B. <div class='col-xl-3 col-12'> for left and right, <div class='col-xl-6 col-12'> for middle
C. <div class='col-lg-12 col-3'> for left and right, <div class='col-lg-12 col-6'> for middle
D. <div class='col-12 col-lg-3'> for left and right, <div class='col-12 col-lg-6'> for middle

Solution

  1. Step 1: Define small screen behavior

    On small screens, columns stack full width, so use col-12 for all columns.
  2. Step 2: Define large screen behavior

    On large screens, left and right columns take 3 parts (col-lg-3), middle takes 6 parts (col-lg-6).
  3. Step 3: Combine classes correctly

    Use col-12 col-lg-3 for left and right, and col-12 col-lg-6 for middle to apply small screen first, then large screen overrides.
  4. Final Answer:

    <div class='col-12 col-lg-3'> for left and right, <div class='col-12 col-lg-6'> for middle -> Option D
  5. Quick Check:

    Small = col-12, Large = col-lg-3 or col-lg-6 [OK]
Hint: Write small screen class first, then large screen class [OK]
Common Mistakes:
  • Reversing class order causing wrong widths
  • Using col-3 for small screens instead of col-12
  • Mixing breakpoint prefixes incorrectly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard