this post was submitted on 07 Jul 2024
539 points (96.9% liked)
Programmer Humor
19551 readers
964 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
It's 2024 and flexboxes still don't work that well with vertical direction and wraparound...
Do you have an example?
Sure. Here you go. The green container should cover all red boxes in both cases. I've been bashing my head against this issue for a while, but, as far as I understand, this is a bug that's never going to be fixed. Which sucks, because I wanted to re-design some of the apps in the horizontal metro-style scrolling manner for the bottom screen on my zephyrus duo, but this effectively prevents me from doing so (Unless I use grids and set positions manually).
That’s interesting. Chrome displays it as you intended, Firefox doesn’t. I guess it’s required that the vertical flex be
inline-flex
?Huh, neat. The last time I looked, chrome was also plagued by this. Might actually re-start some projects I had, but it sucks to have to use chrome.
inline-flex
is indeed necessary since we're growing left to right and flex would take the entire/fixed width, unless it's also inside a flexbox.I also hate to admit it, but Chrome currently is the superior browser.
Chromium is a superior engine, yes. But Chrome itself, at least in my eyes, looks to be the least capable browser out of the bunch. I'd rather Vivaldi if I had to switch.
Inline is never needed and you already know that.
EDIT: Alright, this is a terrible case because the parent element has flex and therefore no inline-flex is necessary there, but I'd argue it's the parent element being flex that is redundant, rather than child element being inline.
Inline means that your element should be treated like text. If your element is not text, then you shouldn't use inline. In this screenshot the element is text, so it's ok.