Last Comment Bug 722463 - Transforms should not work on non-replaced inline elements
: Transforms should not work on non-replaced inline elements
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Layout: Block and Inline (show other bugs)
: Trunk
: All All
: -- normal (vote)
: mozilla13
Assigned To: Aryeh Gregor (:ayg) (next working March 28-April 26)
:
: Jet Villegas (:jet)
Mentors:
Depends on: 802581
Blocks:
  Show dependency treegraph
 
Reported: 2012-01-30 13:29 PST by Aryeh Gregor (:ayg) (next working March 28-April 26)
Modified: 2012-10-17 09:43 PDT (History)
2 users (show)
dao+bmo: in‑testsuite+
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Patch v1 (3.95 KB, patch)
2012-02-14 12:34 PST, Aryeh Gregor (:ayg) (next working March 28-April 26)
roc: review+
Details | Diff | Splinter Review

Description Aryeh Gregor (:ayg) (next working March 28-April 26) 2012-01-30 13:29:20 PST
The spec says:

"""
Name:	transform
. . .
Applies to:	transformable elements
"""
http://dev.w3.org/csswg/css3-transforms/#transform-property

"""
transformable element
A transformable element in the HTML namespace which is either be a block-level or atomic inline-level element, or an element the SVG namespace (see [SVG11]) which has the attributes ‘transform’, ‘patternTransform’ or ‘gradientTransform’.
"""
http://dev.w3.org/csswg/css3-transforms/#TermTransformableElement

This only allows atomic inline-level elements.  Test-case:

data:text/html,<!doctype html>
This is some <span style=-moz-transform:rotate(180deg)>text<br>
that is</span> not transformed

Chrome 17 dev matches the spec, so the text isn't rotated.  IE9, Firefox 12.0a1 (2012-01-24), and Opera Next 12.00 alpha all rotate the text in some fashion -- but they all disagree on how to do it.  It's not clear what authors would want here -- do they want to transform all the line boxes as one big box, or as individual lines?  What's the transform-origin?  Are there any strong use-cases that can't be emulated using inline-block or such?  See discussion here:

https://www.w3.org/Bugs/Public/show_bug.cgi?id=15755

IMO, we should follow the spec and WebKit.  If we don't, we need to propose spec text that says exactly what should happen here.

This bug causes Firefox to fail one of the tests in the reftest suite I'm working on for the CSS Transforms spec.
Comment 1 David Baron :dbaron: ⌚️UTC-10 2012-01-31 03:38:17 PST
Looks like the spec has been revised here in response to our feedback (and that of others).  I could have sworn we had a bug on fixing our behavior to match the old spec, but I can't find it (other than a good bit of discussion about the issue in bug 435293 -- mostly between bug 435293 comment 19 and bug 435293 comment 43).
Comment 2 Aryeh Gregor (:ayg) (next working March 28-April 26) 2012-02-14 12:34:45 PST
Created attachment 597137 [details] [diff] [review]
Patch v1

This just copy-pastes nsTableFrame::Init to nsInlineFrame::Init and deletes the irrelevant parts, based on the patch for bug 722777.
Comment 3 Mozilla RelEng Bot 2012-02-14 12:38:43 PST
Autoland Patchset:
	Patches: 597137
	Branch: mozilla-central => try
	Destination: http://hg.mozilla.org/try/pushloghtml?changeset=040240ed30b9
Try run started, revision 040240ed30b9. To cancel or monitor the job, see: https://tbpl.mozilla.org/?tree=Try&rev=040240ed30b9
Comment 4 Mozilla RelEng Bot 2012-02-14 19:45:23 PST
Try run for 040240ed30b9 is complete.
Detailed breakdown of the results available here:
    https://tbpl.mozilla.org/?tree=Try&rev=040240ed30b9
Results (out of 211 total builds):
    exception: 2
    success: 175
    warnings: 20
    failure: 14
Builds (or logs if builds failed) available at:
http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/autolanduser@mozilla.com-040240ed30b9
Comment 6 Ed Morley [:emorley] 2012-02-17 05:44:47 PST
https://hg.mozilla.org/mozilla-central/rev/d2852f3e1399

Note You need to log in before you can comment on or make changes to this bug.