Closed
Bug 1308517
Opened 8 years ago
Closed 7 years ago
https://klappat.nu/produkter product grid busted in Firefox 49+
Categories
(Core :: Layout, defect, P3)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: miketaylr, Unassigned)
References
()
Details
(Whiteboard: [webcompat])
Attachments
(1 file)
(deleted),
image/png
|
Details |
(One of the site devs emailed me about this problem, so we're in touch if it turns out they're doing something wrong)
STR)
1) visit https://klappat.nu/produkter in Firefox 49+
Expected:
products are presented in a grid
Actual:
single row with no visible products
Flipping layout.css.prefixes.webkit to false fixes this bug.
Reporter | ||
Comment 1•8 years ago
|
||
They're using this Yahoo! flow library:
(and including it twice...minified and unminified):
https://cdnjs.cloudflare.com/ajax/libs/pure/0.6.0/grids-min.css
https://cdnjs.cloudflare.com/ajax/libs/pure/0.6.0/grids-core-min.css
.pure-g {
letter-spacing: -.31em;
*letter-spacing: normal;
*word-spacing: -.43em;
text-rendering: optimizespeed;
font-family: FreeSans,Arimo,"Droid Sans",Helvetica,Arial,sans-serif;
display: -webkit-flex;
-webkit-flex-flow: row wrap;
display: -ms-flexbox;
-ms-flex-flow: row wrap;
-ms-align-content: flex-start;
-webkit-align-content: flex-start;
align-content: flex-start;
}
If I disable the display: -webkit-flex rule (which should just map to display: flex), the site behaves as I would expect. (You have to disable it twice because they include it twice).
The product blocks themselves are all display: inline-block and have responsive breakpoints to control their widths:
@media screen and (min-width: 64em)
.pure-u-lg-1, .pure-u-lg-1-1, .pure-u-lg-1-2, .pure-u-lg-1-3, .pure-u-lg-2-3, .pure-u-lg-1-4, .pure-u-lg-3-4, .pure-u-lg-1-5, .pure-u-lg-2-5, .pure-u-lg-3-5, .pure-u-lg-4-5, .pure-u-lg-5-5, .pure-u-lg-1-6, .pure-u-lg-5-6, .pure-u-lg-1-8, .pure-u-lg-3-8, .pure-u-lg-5-8, .pure-u-lg-7-8, .pure-u-lg-1-12, .pure-u-lg-5-12, .pure-u-lg-7-12, .pure-u-lg-11-12, .pure-u-lg-1-24, .pure-u-lg-2-24, .pure-u-lg-3-24, .pure-u-lg-4-24, .pure-u-lg-5-24, .pure-u-lg-6-24, .pure-u-lg-7-24, .pure-u-lg-8-24, .pure-u-lg-9-24, .pure-u-lg-10-24, .pure-u-lg-11-24, .pure-u-lg-12-24, .pure-u-lg-13-24, .pure-u-lg-14-24, .pure-u-lg-15-24, .pure-u-lg-16-24, .pure-u-lg-17-24, .pure-u-lg-18-24, .pure-u-lg-19-24, .pure-u-lg-20-24, .pure-u-lg-21-24, .pure-u-lg-22-24, .pure-u-lg-23-24, .pure-u-lg-24-24 {
display: inline-block;
zoom: 1;
letter-spacing: normal;
word-spacing: normal;
vertical-align: top;
text-rendering: auto;
}
@media screen and (min-width: 48em)
.pure-u-md-1-3, .pure-u-md-8-24 {
width: 33.3333%;
}
And if I disable the display: -webkit-flex; and -webkit-flex-flow: row wrap; rules in Chrome, there's no change in layout for them. Not sure why right now.
Daniel, any insight?
Flags: needinfo?(dholbert)
Comment 2•8 years ago
|
||
(In reply to Mike Taylor [:miketaylr] from comment #1)
> If I disable the display: -webkit-flex rule (which should just map to
> display: flex) [...]
(and I believe it does here)
> the site behaves as I would expect. (You have to disable it
> twice because they include it twice).
When you disable it, it's left "display:block" -- and the site seems to work nicely if this element is "display:block". (Hooray for graceful fallback!)
So, the problem seems to be due to a difference in modern-CSS-flexbox-behavior, between Chrome & Firefox... Specifically, something to do with height computations. (If I give pure-g an explicit tall height, this renders more nicely.)
And in particular: this seems to be a version of bug 958714. The flex items here (the tiles in the "grid") are sized using "padding-bottom: 20%;" styles. In Firefox, that resolves to 0, because it it resolves against the container's height which is indefinite [due to it having no explicit height & shrinkwrapping its children]. In Chrome (and in block layout in all browserS), that resolves against the container's width.
Comment 3•8 years ago
|
||
The site is similarly-broken in Microsoft Edge, for the same reason. (They behave like we do [i.e. the way the spec used to require, until it was relaxed a bit], with respect to vertical percentages on flex items.)
Reporter | ||
Comment 4•8 years ago
|
||
Ah, OK. I hadn't tested Edge yet. I'll shoot the site dev an email and suggest their fall-back behavior as something that works cross-browser right now. And perhaps time will tell how Bug 958714 shakes out.
Updated•8 years ago
|
Flags: needinfo?(dholbert)
Reporter | ||
Comment 5•8 years ago
|
||
I've emailed the dev (no response yet). I don't want to just dupe this against Bug 958714 (so it doesn't fall off our radars), so I'm gonna set it as blocked.
(someone can feel free to revert that or configure a different bug relationship if they feel strongly)
Depends on: 958714
Updated•7 years ago
|
Priority: -- → P3
Reporter | ||
Comment 6•7 years ago
|
||
The page has changed to https://klappat.nu/Produkter.html, and it looks like they've changed the design.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•