tables inconsistently back-compute their intrinsic sizes from percent-sized cells (only when they're being *directly* intrinsically sized, but not inside intrinsically-sized container)

NEW
Unassigned

Status

()

Core
Layout: Tables
P3
normal
10 months ago
9 months ago

People

(Reporter: Thomas Wisniewski, Unassigned)

Tracking

Trunk
Points:
---
Bug Flags:
webcompat ?

Firefox Tracking Flags

(firefox57 affected)

Details

(Whiteboard: [webcompat], URL)

Attachments

(2 attachments)

(Reporter)

Description

10 months ago
Created attachment 8898055 [details]
testcase 1

I've managed to reduce out a testcase showing the rendering differences causing welt.de's mobile search bar to render differently in Firefox and Chrome (see webcompat.com bug #8294 for screenshots/etc).

I'm not sure what combination of factors is causing the issue, so I've attached the testcase. dholbert, I see flexbox may be involved, so I've cc'd you here as well. I'm not sure if it's the only factor, however.
Attachment #8898055 - Attachment description: testcase.html → testcase 1
Created attachment 8898395 [details]
testcase 2

Here's a more reduced testcase, with several examples for comparison.

In some intrinsic-sizing cases (latter 2 examples in this testcase, inline-table and floated table), both Chrome and Firefox handle percent sizes on table-cells by "back-computing" an appropriate intrinsic size for the table as a whole.

BUT, Firefox does not seem to trigger this back-computing behavior if the table is inside of a block that's being intrinsically-sized.  We only do it when the table itself is being directly intrinsically-sized.

This seems like a bug, though tables are quirky and under-specified...
EXPECTED RESULTS for testcase 2 (based on webcompat & intuition if nothing else):
 All 4 tables should be the same width (~10x the width of the "a", back-computing from "10%").

ACTUAL RESULTS:
 First two tables are skinny (they shrinkwrap the a's width).

Every other major rendering engine has "expected results" -- I tested Edge 15, IE 11, Chrome 60, Safari 11, and Opera 12.15 (Presto).  Whereas, Firefox 57 (current Nightly) has "actual results".
Component: Layout → Layout: Tables
Summary: Test case derived from www.welt.de does not render consistently in Firefox and Chrome → tables back-compute their intrinsic sizes inconsistently (only when they're being *directly* intrinsically sized, but not inside intrinsically-sized container)
Summary: tables back-compute their intrinsic sizes inconsistently (only when they're being *directly* intrinsically sized, but not inside intrinsically-sized container) → tables inconsistently back-compute their intrinsic sizes from percent-sized cells (only when they're being *directly* intrinsically sized, but not inside intrinsically-sized container)
(Reporter)

Updated

10 months ago
Flags: webcompat?
Whiteboard: [webcompat]

Updated

9 months ago
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.