Quantcast
Channel: Active questions tagged flexbox - Stack Overflow
Viewing all articles
Browse latest Browse all 1675

Row will not grow to full width with flexbox and horizontal scrollbar

$
0
0

I'm building a table with flexbox, with the first cell being a header for the row. The other cells in the row are fixed-width.

I'd also like to have a header row with a background than spans the whole width.

Here's what it looks like :

enter image description here

and the corresponding code (using tailwind but it's really a CSS question) :

<div class="flex flex-col overflow-x-auto p-4"><div class="flex w-full bg-gray-300"><div class="min-w-40 grow">Header 1</div></div><div><div class="flex"><div class="min-w-40 grow">Row header 1</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div></div><div class="flex"><div class="min-w-40 grow">Row header 2</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div></div><div class="flex w-full bg-gray-300"><div class="min-w-40 grow">Header 2</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div></div><div class="flex"><div class="min-w-40 grow">Row header 3</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div><div class="w-12 flex-none">2.5</div></div></div></div>

Also in tailwind's playground.

When the screen size changes, the extra and removed space is absorbed by the first column, hence the grow class, up to a point, hence the min-w-40 class.

When the screen size gets too small, an horizontal scrollbar appears.

The problem is that the header row's background does no go all the way to the end of the row, it stops before the end.

enter image description here

How do I fix that ? And more importantly, I don't understand why so I'd love an explanation!


Viewing all articles
Browse latest Browse all 1675

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>