Bird
Raised Fist0
Bootsrapmarkup~20 mins

Mixing column widths in Bootsrap - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Bootstrap Column Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding Bootstrap column width behavior
In Bootstrap's grid system, what happens if you mix fixed-width columns (like col-3) with auto-width columns (like col) inside the same row?
AAuto-width columns shrink to zero width and are not visible.
BAll columns become fixed width based on the largest fixed-width column.
CThe fixed-width columns keep their size, and the auto-width columns share the remaining space equally.
DThe row breaks into multiple lines to fit all columns.
Attempts:
2 left
💡 Hint
Think about how Bootstrap distributes space when some columns have fixed sizes and others don't.
📝 Syntax
intermediate
2:00remaining
Correct Bootstrap column class usage
Which option correctly creates a row with three columns where the first column is 4 units wide, the second column auto-adjusts, and the third column is 3 units wide?
Bootsrap
<div class="row">
  <!-- columns here -->
</div>
A<div class="col-3"></div><div class="col-4"></div><div class="col"></div>
B<div class="col-4"></div><div class="col"></div><div class="col-3"></div>
C<div class="col"></div><div class="col-4"></div><div class="col-3"></div>
D<div class="col-4"></div><div class="col-3"></div><div class="col"></div>
Attempts:
2 left
💡 Hint
Remember the order: first column 4 units, second auto, third 3 units.
❓ rendering
advanced
2:30remaining
Visual output of mixed column widths
What will you see in the browser when you use this Bootstrap code inside a container?
<div class="row">
  <div class="col-2 bg-primary text-white">A</div>
  <div class="col bg-success text-white">B</div>
  <div class="col-3 bg-danger text-white">C</div>
</div>
AA narrow blue box labeled 'A', a green box labeled 'B' filling leftover space, and a wider red box labeled 'C'.
BThree equal boxes labeled A, B, and C with equal widths and colors blue, green, and red.
CBoxes A and C stacked vertically with B filling the full width below them.
DOnly boxes A and C appear side by side; box B is hidden.
Attempts:
2 left
💡 Hint
Look at the column classes and their widths.
❓ selector
advanced
2:00remaining
CSS selector for mixed Bootstrap columns
You want to style only the auto-width columns inside a Bootstrap row that also has fixed-width columns. Which CSS selector targets only the auto-width columns (with class col) inside a .row?
A.row > div:not(.col)
B.row > .col:not([class*='col-'])
C.row > [class^='col-']
D.row > .col
Attempts:
2 left
💡 Hint
Remember that auto-width columns have the class exactly 'col'.
❓ accessibility
expert
3:00remaining
Ensuring accessibility with mixed column widths
You have a Bootstrap row with mixed column widths. What is the best practice to ensure screen readers understand the layout and content order correctly?
AUse semantic HTML elements inside columns and ensure logical DOM order matches visual order.
BAdd <code>aria-hidden="true"</code> to fixed-width columns to skip them.
CUse <code>tabindex="-1"</code> on auto-width columns to prevent keyboard focus.
DWrap all columns in a single <code>div</code> with <code>role="presentation"</code>.
Attempts:
2 left
💡 Hint
Think about how screen readers read content and the importance of semantic structure.

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