Opened 5 weeks ago
Closed 4 weeks ago
#8204 closed defect (bug) (fixed)
Plugin screenshots thumbnails stack vertically in Chrome 146
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Milestone: | Priority: | normal | |
| Component: | Plugin Directory | Keywords: | has-patch |
| Cc: |
Description
Hi everyone,
I noticed a fresh issue with plugin screenshot galleries - the thumbnail row below the main image stacks vertically in Chrome 146. Looks fine in Firefox and older Chrome.
Steps to Reproduce
- Open https://wordpress.org/plugins/woocommerce/ in Chrome 146
- Scroll to Screenshots
- Thumbnails are stacked in a column instead of a horizontal row
Root Cause
The .image-gallery-thumbnail buttons use display: table-cell inside a block container with white-space: nowrap. Browsers are supposed to wrap these into anonymous table boxes so they line up horizontally - Firefox does this, Chrome did too until version 146.
Chrome 146 changed how LayoutNG generates anonymous tables for <button> elements: each button now gets its own anonymous table instead of sharing one row. So they stack vertically.
This will hit more users as Chrome 146 rolls out to stable.
Fix
A quick patch would be swapping display: table-cell for inline-block/flex. But honestly, this whole ImageGallery component is pretty dated - it still uses pre-React 17 lifecycle methods, ships ~140KB of JS just for a carousel, and doesn't even have a lightbox. Clicking a screenshot just opens the image in a new tab, which feels like 2010.
Replacing it with the Gallery block + core lightbox as proposed in #524 for #8083 would fix this and bring the screenshots section up to modern standards.
Related
Change History (2)
This ticket was mentioned in PR #560 on WordPress/wordpress.org by @alexodiy.
5 weeks ago
#1
- Keywords has-patch added; needs-patch removed

Chrome 146 changed how LayoutNG handles anonymous table boxes for
<button>elements, so.image-gallery-thumbnailbuttons that usedisplay: table-cellno longer share a row - they each get their own anonymous table and stack vertically.Swapping
table-cellforinline-blockfixes it. The container already haswhite-space: nowrapso nothing else breaks.Fixes https://meta.trac.wordpress.org/ticket/8204