Engineering · 5 min
Why I still argue with CSS at 1am
You'd think after years of shipping UI, CSS and I would have reached a truce. We have not.
The specific fight, this time: a flex container that refused to respect min-width: 0 on a nested text node, quietly overflowing a card by exactly 14 pixels on one specific viewport width. Nothing in the computed styles explained it. Nothing in the DevTools box model explained it. It took a comment from 2019 on a GitHub issue to explain it.
The pattern, every time
- Something looks wrong.
- I assume it's my fault.
- It is not my fault. It's flexbox's default
min-width: autoon flex children. - I remember this for exactly one project, then forget it by the next.
I've started keeping a personal "CSS grudges" file — a running list of gotchas I've already paid the tax on once. It's saved me more debugging time than any framework upgrade.