Summary: | CSS 2.1 failure: dynamic-top-change-005 fails | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> | ||||||
Component: | CSS | Assignee: | Robert Hogan <robert> | ||||||
Status: | RESOLVED DUPLICATE | ||||||||
Severity: | Normal | CC: | hyatt, robert, simon.fraser, tabatkins | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | PC | ||||||||
OS: | OS X 10.5 | ||||||||
Bug Depends on: | 68149, 69210 | ||||||||
Bug Blocks: | 47141 | ||||||||
Attachments: |
|
Description
Simon Fraser (smfr)
2011-01-25 16:07:05 PST
Maybe we get containing block wrong for relpos inline inside relpos inline? We're also failing to re-layout on the dynamic change. Part of the issue is with top: inherit not causing layout when the inherited value changes. (In reply to comment #3) > Part of the issue is with top: inherit not causing layout when the inherited value changes. This issue seems fixed on TOT. Created attachment 107799 [details]
Reduction
This is a reduction of the issue, though I'm not 100% sure it is an issue.
dynamic-top-change-005 expects a relatively positioned originally inlined block-display child of a relatively positioned inline parent to render relative to the parent. So in the case of the reduction, it should render 75px relative to the top of the view. Firefox does this, but WebKit and Opera render 25px relative to the top of the view.
The reason WebKit does this is because the parent and child are in fact sibling render layers rather than parent and child, which is a result I guess of handling a block inside an inline flow.
So is this an wanted side-effect of the 'All in-flow children of an inline flow must be inlines.' rule, or is the test wrong-headed in the first place?
It really does look like the test expects the relpos block to offset 50px from the inline parent rather than the nearest containing block, which is the 'grandparent'. Is that really the expected behaviour of a relatively positioned block? Created attachment 109192 [details]
Easier to understand reduction
This makes the issue (as I see it) easier to see - there is no red if the relpos inline block calculates its offset from the relpos inline parent.
|