Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Prioritized list of CSS and DOM non-standard junk

6 views
Skip to first unread message

Mike Taylor

unread,
Jul 2, 2015, 11:50:28 AM7/2/15
to Jet Villegas, Andrew Overholt, Karl Dubost, compatibility
Hi Jet and Andrew,

We finished our prioritized list of child bugs from 1170774 and wrote it
up here:
<https://wiki.mozilla.org/Compatibility/Mobile/Non_Standard_Compatibility>

Jet, we also ran a screenshot comparison on the US Top 250 sites with
the CSS Unprefixing Service enabled globally. (It turned out to be
slightly less due to gfx crashes--a guess, anyways, or other annoying
issues). Karl did an analysis:

<https://groups.google.com/forum/#!topic/mozilla.compatibility/xFk15n5MDfU>

I think he's planning on doing some more testing, but so far it doesn't
seem to break much (anything?). To be fair we're just looking at the
visible viewport of home pages.

If we can figure out why CanvasRenderingContext2D.drawWindow() is
choking on the entire (non-visible) site, that should help boost
confidence. It's possibly my add-on is just buggy. >_>

HTH,

--
Mike Taylor
Web Compat, Mozilla

Jet Villegas

unread,
Jul 2, 2015, 5:07:52 PM7/2/15
to Mike Taylor, Andrew Overholt, Karl Dubost, compatibility, Celik, Tantek
Thanks, Mike and Karl. This helps a lot. It looks like we have consensus to
fix bug 1177263 <https://bugzilla.mozilla.org/show_bug.cgi?id=1177263> in
Q3 and announce an intent to implement. Tantek volunteered to push this
through the spec process.

Some questions:

- -webkit-flexbox (implemented currently by 1107378
<https://bugzilla.mozilla.org/show_bug.cgi?id=1107378>)

- Is the current implementation satisfactory? Anything else missing here?

- -webkit-background* 1179386
<https://bugzilla.mozilla.org/show_bug.cgi?id=1179386>

- What does the * mean here?

- -webkit-transforms 1179444
<https://bugzilla.mozilla.org/show_bug.cgi?id=1179444>
- -webkit-transitions 1179437
<https://bugzilla.mozilla.org/show_bug.cgi?id=1179437>

- No -webkit-animations on the list? Is that already covered by the
unprefixing service?

--Jet

Karl Dubost

unread,
Jul 2, 2015, 5:19:27 PM7/2/15
to j...@mozilla.com, Jet Villegas, Andrew Overholt, compatibility, Celik, Tantek, Michael Taylor
jet,


Le 3 juil. 2015 à 06:07, Jet Villegas <jvil...@mozilla.com> a écrit :
> • -webkit-flexbox (implemented currently by 1107378)
> - Is the current implementation satisfactory? Anything else missing here?

Performance testing is missing, but so far we haven't found cases where it was not doing what we wanted.


> • -webkit-background* 1179386
> - What does the * mean here?

see https://bugzilla.mozilla.org/show_bug.cgi?id=1179386#c0

-webkit-background
-webkit-background-attachment
-webkit-background-clip
-webkit-background-color
-webkit-background-image
-webkit-background-origin
-webkit-background-position
-webkit-background-position-x
-webkit-background-position-y
-webkit-background-repeat
-webkit-background-size


> • -webkit-transforms 1179444
> • -webkit-transitions 1179437
> - No -webkit-animations on the list? Is that already covered by the unprefixing service?


https://bugzilla.mozilla.org/show_bug.cgi?id=1179408


--
Karl Dubost, Mozilla
http://www.la-grange.net/karl/moz

Mike Taylor

unread,
Jul 2, 2015, 6:02:24 PM7/2/15
to j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility, Daniel Holbert
Hi Jet,

On 7/2/15 16:07, Jet Villegas wrote:
> Tantek volunteered to push this through the spec process.

Cool. We have plans to work on a spec in the WHATWG[1] space (likely
starting work on that next week). So let's coordinate our efforts,
Tantek. Do you have time early next week for a video chat?

[1] <https://github.com/whatwg/compat/>

> Some questions:
>
> * -webkit-flexbox (implemented currently by 1107378
> <https://bugzilla.mozilla.org/show_bug.cgi?id=1107378>)
>
> - Is the current implementation satisfactory? Anything else missing here?

AFAIK, it's solved all* issues we've run into. I've cc'd Daniel in case
there's something he's noticed that I'm forgetting.

*There was one corner case "when it comes to handling inline content
inside of a flex container & deciding where to draw the boundaries
between flex items."

Unfortunately the conversation happened on a mailing list without an
archive. :( Here's a gist with the relevant bits of info:

<https://gist.github.com/miketaylr/2ed7d4ad6ba11ab552e3>

The real effect of this difference doesn't break layout, however. It's
just slightly different. Worth noting in a spec. ^_^

I think Karl answered the rest of the questions.

later,

Daniel Holbert

unread,
Jul 6, 2015, 5:24:41 PM7/6/15
to Mike Taylor, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 07/02/2015 03:02 PM, Mike Taylor wrote:
>> Some questions:
>>
>> * -webkit-flexbox (implemented currently by 1107378
>> <https://bugzilla.mozilla.org/show_bug.cgi?id=1107378>)
>>
>> - Is the current implementation satisfactory? Anything else missing here?
>
> AFAIK, it's solved all* issues we've run into. I've cc'd Daniel in case
> there's something he's noticed that I'm forgetting.

Just to be extra-clear -- I think you're talking about "-webkit-box",
not "-webkit-flexbox". [1]

Right, I don't think we've run into any issues beyond the one you
mentioned. However, that's partly because our whitelisted sites don't do
anything too complex with it.

When we enable global unprefixing, we may run into some more tricky
cases with complex mobile webapps that depend on quirks which
"-webkit-box" does not share with modern "display:flex".

It may be difficult to standardize a universal way to unprefix
"-webkit-box" & friends; I think all we can shoot for is a
best-effort-which-works-in-simple-cases. I'm curious how Microsoft
implements "-webkit-box" -- i.e. if they just map it to modern syntax
like we do, and (if so) if they use the same mappings that we do. [2]

~Daniel

[1] -webkit-box is the older, more prevalent, trickier one.
-webkit-flexbox would be a prefixed early draft of the modern syntax. I
don't know that any sizeable number of webkit browsers shipped with
support for that syntax, though - they're more likely to be using
"-webkit-flex", which would be the (prefixed) final modern syntax.
[2] Our flexbox property-mappings are here, FWIW:
http://mxr.mozilla.org/mozilla-central/source/layout/style/CSSUnprefixingService.js?rev=39c35b0c2e04&mark=43-44,60-86#38
(combined with C++ code to treat "-webkit-box" as "flex")

Gervase Markham

unread,
Jul 7, 2015, 9:28:36 AM7/7/15
to Daniel Holbert, Mike Taylor, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 06/07/15 22:24, Daniel Holbert wrote:
> It may be difficult to standardize a universal way to unprefix
> "-webkit-box" & friends; I think all we can shoot for is a
> best-effort-which-works-in-simple-cases. I'm curious how Microsoft
> implements "-webkit-box" -- i.e. if they just map it to modern syntax
> like we do, and (if so) if they use the same mappings that we do. [2]

I think it would be extremely wise to do a documentation effort on these
properties and agree a spec with MS, so that if we are emulating
propietary properties, we are at least all doing it the same way.

Gerv

Gervase Markham

unread,
Jul 7, 2015, 9:29:26 AM7/7/15
to Daniel Holbert, Mike Taylor, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 06/07/15 22:24, Daniel Holbert wrote:
> It may be difficult to standardize a universal way to unprefix
> "-webkit-box" & friends; I think all we can shoot for is a
> best-effort-which-works-in-simple-cases. I'm curious how Microsoft
> implements "-webkit-box" -- i.e. if they just map it to modern syntax
> like we do, and (if so) if they use the same mappings that we do. [2]

Gervase Markham

unread,
Jul 7, 2015, 9:29:26 AM7/7/15
to Daniel Holbert, Mike Taylor, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 06/07/15 22:24, Daniel Holbert wrote:
> It may be difficult to standardize a universal way to unprefix
> "-webkit-box" & friends; I think all we can shoot for is a
> best-effort-which-works-in-simple-cases. I'm curious how Microsoft
> implements "-webkit-box" -- i.e. if they just map it to modern syntax
> like we do, and (if so) if they use the same mappings that we do. [2]

Karl Dubost

unread,
Jul 7, 2015, 10:57:31 AM7/7/15
to Gervase Markham, j...@mozilla.com, Daniel Holbert, Michael Taylor, compatibility, Celik, Tantek, Andrew Overholt, mozilla-co...@lists.mozilla.org
Gervase,

Le 7 juil. 2015 à 21:14, Gervase Markham <ge...@mozilla.org> a écrit :
> I think it would be extremely wise to do a documentation effort on these
> properties and agree a spec with MS, so that if we are emulating
> propietary properties, we are at least all doing it the same way.

Agreed.

I would also encourage participation from Google Blink and Apple WebKit, because for certain things they also have a major issue in terms of code management. The sites are working for them, obviously, but they are basically condemned to maintain old code cruft to be compatible with the Web.

Karl Dubost

unread,
Jul 7, 2015, 10:57:33 AM7/7/15
to Gervase Markham, j...@mozilla.com, Daniel Holbert, Michael Taylor, compatibility, Celik, Tantek, Andrew Overholt, mozilla-co...@lists.mozilla.org

Mike Taylor

unread,
Jul 7, 2015, 11:03:55 AM7/7/15
to Daniel Holbert, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 7/6/15 16:24, Daniel Holbert wrote:
> I'm curious how Microsoft
> implements "-webkit-box" -- i.e. if they just map it to modern syntax
> like we do, and (if so) if they use the same mappings that we do. [2]

I'll reach out and ask.

IE 10 implemented the 2011 display: -ms-flexbox version of flexbox. They
document their mapping from 2011 to prefixless Flexbox in Edge here:

<https://msdn.microsoft.com/en-us/library/dn265027%28v=vs.85%29.aspx>

Daniel Holbert

unread,
Jul 7, 2015, 1:01:32 PM7/7/15
to Mike Taylor, j...@mozilla.com, Celik, Tantek, Andrew Overholt, Karl Dubost, compatibility
On 07/07/2015 08:03 AM, Mike Taylor wrote:
> IE 10 implemented the 2011 display: -ms-flexbox version of flexbox. They
> document their mapping from 2011 to prefixless Flexbox in Edge here:
>
> <https://msdn.microsoft.com/en-us/library/dn265027%28v=vs.85%29.aspx>

Yup -- we don't really need to worry about that document. That's just
documenting a Great Renaming of modern flexbox property/keyword-values,
which occurred during the lifetime of the modern flexbox spec.

We should be able to ignore the old-ish keywords from that document
(e.g. "-ms-flex-pack", "-ms-flex-align"), because they didn't exist in
the modern spec long enough for many browsers to ship with them. I'm
don't think (?) any webkit-based browsers ever shipped with support for
those keywords (or if they did, they were updated before long). IIRC,
the Great Renaming even happened before IE shipped the old-ish syntax,
(but it was too late in their release cycle for them to change).

L. David Baron

unread,
Jul 7, 2015, 1:11:27 PM7/7/15
to Mike Taylor, Andrew Overholt, Karl Dubost, compatibility, Jet Villegas
On Thursday 2015-07-02 10:50 -0500, Mike Taylor wrote:
> Hi Jet and Andrew,
>
> We finished our prioritized list of child bugs from 1170774 and wrote it up
> here:
> <https://wiki.mozilla.org/Compatibility/Mobile/Non_Standard_Compatibility>

I think it would probably be useful to separate out the priority of
different parts of "Enable CSS Unprefixing service globally", since
what we have isn't actually designed to be enabled globally, so at
least some of the different things it does would have to be done
separately.

-David

--
𝄞 L. David Baron http://dbaron.org/ 𝄂
𝄢 Mozilla https://www.mozilla.org/ 𝄂
Before I built a wall I'd ask to know
What I was walling in or walling out,
And to whom I was like to give offense.
- Robert Frost, Mending Wall (1914)
signature.asc

Daniel Holbert

unread,
Jul 7, 2015, 2:20:49 PM7/7/15
to L. David Baron, Mike Taylor, Andrew Overholt, Karl Dubost, compatibility, Jet Villegas
On 07/07/2015 10:10 AM, L. David Baron wrote:
> On Thursday 2015-07-02 10:50 -0500, Mike Taylor wrote:
>> We finished our prioritized list of child bugs from 1170774 and
>> wrote it up here:
>> <https://wiki.mozilla.org/Compatibility/Mobile/Non_Standard_Compatibility>
>
>>
> I think it would probably be useful to separate out the priority
> of different parts of "Enable CSS Unprefixing service globally",
> since what we have isn't actually designed to be enabled globally,
> so at least some of the different things it does would have to be
> done separately.

I think (?) that might be what the prioritized list-entries below that
one are meant to represent. (Mike, correct me if I'm wrong here.)

At least, some of the features listed below are currently supported
via the CSS Unprefixing Service -- e.g. -webkit flexbox properties,
-webkit-transform, -webkit-transform-origin, -webkit-transition.

Andrew Overholt

unread,
Jul 8, 2015, 10:54:48 AM7/8/15
to Mike Taylor, Karl Dubost, compatibility, Jet Villegas
Hi,

On Thu, Jul 2, 2015 at 11:50 AM, Mike Taylor <mi...@mozilla.com> wrote:

> We finished our prioritized list of child bugs from 1170774 and wrote it
> up here: <
> https://wiki.mozilla.org/Compatibility/Mobile/Non_Standard_Compatibility>
>

Thanks for the nice summary wiki page. I've got these items incorporated
into DOM work planning.

Andrew

Mike Taylor

unread,
Jul 8, 2015, 11:31:15 AM7/8/15
to Daniel Holbert, L. David Baron, Andrew Overholt, Karl Dubost, compatibility, Jet Villegas
On 7/7/15 13:20, Daniel Holbert wrote:
> On 07/07/2015 10:10 AM, L. David Baron wrote:
>> On Thursday 2015-07-02 10:50 -0500, Mike Taylor wrote:
>>> We finished our prioritized list of child bugs from 1170774 and
>>> wrote it up here:
>>> <https://wiki.mozilla.org/Compatibility/Mobile/Non_Standard_Compatibility>
>>
>>>
>> I think it would probably be useful to separate out the priority
>> of different parts of "Enable CSS Unprefixing service globally",
>> since what we have isn't actually designed to be enabled globally,
>> so at least some of the different things it does would have to be
>> done separately.
>
> I think (?) that might be what the prioritized list-entries below that
> one are meant to represent. (Mike, correct me if I'm wrong here.)

Yeah, pretty much.

Daniel wrote a plan that seems sensible in [1]. To summarize,

1) Use the Unprefixing service to do the more complicated
re-writing/mapping stuff for flexbox, gradients, etc. (which we do
currently). This exists, so the work here would be enabling globally and
removing some of the 1:1 mappings.

2) Use dbaron's patches from 837211 to support
"propertiesThatAreJustAliases". The prioritized list in the CSS section
on the wiki cover the relative importance here.

3) Figure out how to get "CSSUnprefixingService-backed properties
available via the DOM (for e.g. elem.style.webkitBoxFlex = "1")".
This will be required for "fancy" gmail to work, and probably lots more.[2]

I'll add this to the wiki to make it more clear and file a bug for 3.

[1] <https://bugzilla.mozilla.org/show_bug.cgi?id=1170774#c7>
[2]
<https://github.com/webcompat/web-bugs/issues/1333#issuecomment-119581968>
0 new messages