Bird
Raised Fist0
Tailwindmarkup~20 mins

Column spanning in Tailwind - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
๐ŸŽ–๏ธ
Grid Master: Column Spanning
Get all challenges correct to earn this badge!
Test your skills under time pressure!
โ“ layout
intermediate
2:00remaining
What is the visual layout of this grid with column spanning?
Consider a 3-column grid where the first item spans 2 columns. What will the layout look like?
Tailwind
<div class="grid grid-cols-3 gap-4">
  <div class="col-span-2 bg-blue-500 text-white p-4">Item 1</div>
  <div class="bg-green-500 text-white p-4">Item 2</div>
  <div class="bg-red-500 text-white p-4">Item 3</div>
</div>
AItem 1 takes first two columns in the first row; Item 2 is in the third column of the first row; Item 3 is below Item 1 in the second row, first column.
BItem 1 takes all three columns in the first row; Item 2 and Item 3 are side by side in the second row.
CItem 1 takes first two columns in the first row; Item 2 is below Item 1 in the second row, first column; Item 3 is below Item 2 in the third row, first column.
DItem 1 takes first two columns in the first row; Item 2 is in the third column of the first row; Item 3 is below Item 2 in the second row, third column.
Attempts:
2 left
๐Ÿ’ก Hint
Remember that grid items fill rows left to right, top to bottom, and spanning columns affects placement of following items.
โ“ selector
intermediate
1:00remaining
Which Tailwind class makes an element span 3 columns in a grid?
You want a grid item to cover exactly 3 columns. Which class should you use?
Acol-span-full
Bcol-start-3
Ccol-end-3
Dcol-span-3
Attempts:
2 left
๐Ÿ’ก Hint
The class name for spanning columns starts with 'col-span-' followed by the number of columns to span.
๐Ÿง  Conceptual
advanced
1:30remaining
What happens if a grid item spans more columns than the grid has?
If a grid has 4 columns and an item uses col-span-6, what will happen?
AThe item will overflow outside the grid container.
BThe item will cause a layout error and not render.
CThe item will span all 4 columns, ignoring the extra span.
DThe item will automatically wrap to the next row.
Attempts:
2 left
๐Ÿ’ก Hint
Think about how CSS grid handles spans larger than the grid size.
โ“ accessibility
advanced
2:00remaining
How does column spanning affect keyboard navigation in grids?
If a grid item spans multiple columns, what should you consider for keyboard users?
AUse tabindex="-1" on the spanning item to prevent focus.
BEnsure the item has a clear focus style and logical tab order despite spanning columns.
CRemove the item from tab order because spanning confuses keyboard users.
DAdd aria-hidden="true" to the spanning item to skip it in navigation.
Attempts:
2 left
๐Ÿ’ก Hint
Think about how users navigate with keyboard and how focus moves in grids.
โ“ rendering
expert
2:30remaining
What is the rendered width of a grid item with col-span-2 in a 4-column grid with 1rem gap?
Given a grid container 40rem wide with 4 equal columns and 1rem gap between columns, what is the width of an item with col-span-2?
A19.5rem
B20rem
C18.5rem
D21rem
Attempts:
2 left
๐Ÿ’ก Hint
Calculate total gaps width, subtract from container width, then divide by columns and multiply by span count.

Practice

(1/5)
1. What does the Tailwind class col-span-3 do in a grid layout?
easy
A. Creates 3 columns inside the element
B. Adds 3 columns to the grid container
C. Makes the element span across 3 columns in the grid
D. Sets the element width to 3rem

Solution

  1. Step 1: Understand the role of col-span-{n}

    The class col-span-3 tells the element to cover 3 columns in the grid layout.
  2. Step 2: Differentiate from other grid classes

    It does not create columns or set width; it only controls how many columns the element spans.
  3. Final Answer:

    Makes the element span across 3 columns in the grid -> Option C
  4. Quick Check:

    col-span-3 = span 3 columns [OK]
Hint: Remember col-span controls how many columns an item covers [OK]
Common Mistakes:
  • Confusing col-span with grid-cols which sets columns on container
  • Thinking col-span creates columns inside the element
  • Assuming col-span sets fixed width in rem or px
2. Which of the following is the correct way to make a grid container with 4 columns and an item that spans 2 columns in Tailwind?
easy
A.
Item
B.
Item
C.
Item
D.
Item

Solution

  1. Step 1: Set up the grid container with 4 columns

    The class grid-cols-4 inside a grid container creates 4 columns.
  2. Step 2: Make the item span 2 columns

    The class col-span-2 on the item makes it cover 2 columns.
  3. Final Answer:

    <div class='grid grid-cols-4'><div class='col-span-2'>Item</div></div> -> Option B
  4. Quick Check:

    grid-cols-4 + col-span-2 = correct syntax [OK]
Hint: Use grid-cols on container, col-span on item [OK]
Common Mistakes:
  • Swapping order of grid and grid-cols classes
  • Using incorrect class like span-col-2 instead of col-span-2
  • Setting col-span larger than grid-cols
3. Given this code snippet, what will be the visual layout of the grid items?
<div class='grid grid-cols-3 gap-4'>
  <div class='col-span-2 bg-blue-300'>A</div>
  <div class='bg-red-300'>B</div>
  <div class='bg-green-300'>C</div>
</div>
medium
A. Item A spans 2 columns in the first row, B occupies the third column in the first row, C starts a new row
B. Items A, B, and C all appear in the first row, each spanning one column
C. Item A spans 3 columns, B and C are below in separate rows
D. Item A spans 2 rows, B and C are side by side in the first row

Solution

  1. Step 1: Analyze grid container and columns

    The container has 3 columns with gaps. Item A spans 2 columns, so it fills columns 1 and 2 in the first row.
  2. Step 2: Position of items B and C

    Item B fills the remaining 1 column in the first row (column 3). Item C moves to the next row occupying the first column.
  3. Final Answer:

    Item A spans 2 columns in the first row, B occupies the third column in the first row, C starts a new row -> Option A
  4. Quick Check:

    col-span-2 + grid-cols-3 layout = Item A spans 2 columns in the first row, B occupies the third column in the first row, C starts a new row [OK]
Hint: Count columns and span to place items visually [OK]
Common Mistakes:
  • Assuming all items fit in one row regardless of span
  • Thinking col-span affects rows instead of columns
  • Ignoring grid gaps affecting spacing
4. Identify the error in this Tailwind grid code:
<div class='grid grid-cols-3'>
  <div class='col-span-4 bg-yellow-200'>Item 1</div>
  <div>Item 2</div>
</div>
medium
A. col-span-4 is invalid because the grid has only 3 columns
B. Missing gap class for spacing between columns
C. The grid container is missing the grid class
D. The second div should also have a col-span class

Solution

  1. Step 1: Check grid container columns

    The container has 3 columns defined by grid-cols-3.
  2. Step 2: Validate col-span value

    The item uses col-span-4, which tries to span 4 columns, exceeding the 3 columns available.
  3. Final Answer:

    col-span-4 is invalid because the grid has only 3 columns -> Option A
  4. Quick Check:

    col-span cannot exceed grid-cols [OK]
Hint: col-span must be โ‰ค grid-cols count [OK]
Common Mistakes:
  • Ignoring that col-span cannot be larger than grid-cols
  • Thinking missing gap causes layout error
  • Assuming grid class is missing when it is present
5. You want to create a responsive grid where an item spans 4 columns on large screens but only 2 columns on small screens. Which Tailwind classes achieve this?
hard
A. grid grid-cols-6 col-span-2 sm:col-span-4
B. grid grid-cols-4 col-span-4 sm:col-span-2
C. grid grid-cols-6 col-span-4 sm:col-span-2
D. grid grid-cols-6 col-span-2 lg:col-span-4

Solution

  1. Step 1: Define grid with enough columns

    Using grid-cols-6 gives 6 columns, enough for spanning 4 columns on large screens.
  2. Step 2: Set default and large screen spans

    col-span-2 applies by default (small screens). lg:col-span-4 overrides on large screens to span 4 columns.
  3. Final Answer:

    grid grid-cols-6 col-span-2 lg:col-span-4 -> Option D
  4. Quick Check:

    Responsive col-span with lg: prefix = grid grid-cols-6 col-span-2 lg:col-span-4 [OK]
Hint: Use responsive prefixes like lg: for different spans [OK]
Common Mistakes:
  • Using sm: prefix for large screen changes
  • Setting col-span larger than grid-cols
  • Not defining enough columns in grid-cols
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