CSS: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
m (→‎Shipping Soon: Dropped motion path since we've added it above)
(→‎2018 Priorities: sort by Yallhands Layout team prioritization discussions.)
Line 18: Line 18:
* List from DevRel kept here: http://mozdevs.github.io/devrel-dashboard/ in CSS and Layout sections
* List from DevRel kept here: http://mozdevs.github.io/devrel-dashboard/ in CSS and Layout sections


==== Shapes ====
==== Fonts Level 4 ====
* [https://drafts.csswg.org/css-shapes/ CSS Shapes] (CR, another CR expected any moment now in 2017) [https://bugzilla.mozilla.org/show_bug.cgi?id=1040714 metabug]
For Variable Fonts support in particular:
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1098939 shape-outside]
* Bugzilla for Variable Fonts: https://bugzilla.mozilla.org/show_bug.cgi?id=1302685
* [https://drafts.csswg.org/css-fonts-4/ Fonts 4], [https://bugzilla.mozilla.org/show_bug.cgi?id=css-fonts-4 metabug]
(reprioritize Fonts Level 4 accordingly once we have Variable Fonts)


==== Grid Level 2 ====
==== Motion Path ====
Grid Level 2 AKA subgrid (use-cases, a11y implications)
* [https://drafts.fxtf.org/motion-1/ Motion Path Module Level 1], [https://bugzilla.mozilla.org/show_bug.cgi?id=1186329 meta bug]
* [https://drafts.csswg.org/css-grid-2/ CSS Grid level 2] specifically [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=subgrid for subgrid]
* doing some exploratory implementing, design may (hopefully likely) change accordingly
* see also for quick use-cases / tutorial:
** http://fantasai.inkedblade.net/style/discuss/subgrid-markup/
 
==== Box Alignment ====
* [https://drafts.csswg.org/css-align/ CSS Box Alignment] ([https://www.w3.org/TR/css-align-3/ WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1105570 metabug]
** all properties for blocks (e.g. [https://bugzilla.mozilla.org/show_bug.cgi?id=1105571 1105571])
** and some details for flexbox (see metabug 1105570 Depends on)
** spec CR depends on resolving [https://github.com/w3c/csswg-drafts/labels/css-align-3 open css-align-3 issues]
 
==== Scroll Snap update ====
* [https://drafts.csswg.org/css-scroll-snap-1/ Scroll Snap] ([https://www.w3.org/TR/css-scroll-snap-1/ CR]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1231777 metabug]
** Fix [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=%22scroll+snap%22 related bugs]
 
==== Scrollbar Styling ====
Spec in editor's draft - many requests for this
* https://drafts.csswg.org/css-scrollbars-1/
 
==== text-decoration-skip ====
* Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=812990
* parity with Chrome


==== Sizing ====
==== Sizing ====
[https://drafts.csswg.org/css-sizing-3/ CSS Intrinsic & Extrinsic Sizing Module Level 3] ([https://www.w3.org/TR/css-sizing-3/ WD]) [https://bugzilla.mozilla.org/show_bug.cgi?id=1312587 metabug]
[https://drafts.csswg.org/css-sizing-3/ CSS Intrinsic & Extrinsic Sizing Module Level 3] ([https://www.w3.org/TR/css-sizing-3/ WD]) [https://bugzilla.mozilla.org/show_bug.cgi?id=1312587 metabug]
* intrinsic size keywords: fix [https://bugzilla.mozilla.org/show_bug.cgi?id=567039 #567039] & [https://bugzilla.mozilla.org/show_bug.cgi?id=1055887 #1055887], and unprefix ([https://bugzilla.mozilla.org/show_bug.cgi?id=1322780 #1322780]
* intrinsic size keywords: fix [https://bugzilla.mozilla.org/show_bug.cgi?id=567039 #567039] & [https://bugzilla.mozilla.org/show_bug.cgi?id=1055887 #1055887], and unprefix ([https://bugzilla.mozilla.org/show_bug.cgi?id=1322780 #1322780]
==== Shapes ====
* [https://drafts.csswg.org/css-shapes/ CSS Shapes] (CR, another CR expected any moment now in 2017) [https://bugzilla.mozilla.org/show_bug.cgi?id=1040714 metabug]
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1098939 shape-outside]


==== Containment ====
==== Containment ====
* [https://drafts.csswg.org/css-containment/ CSS Containment Module Level 1] ([https://www.w3.org/TR/2017/WD-css-contain-1-20170221/ FPWD]) 'contain' property, size/layout, style, paint. [https://bugzilla.mozilla.org/show_bug.cgi?id=1150081 metabug]
* [https://drafts.csswg.org/css-containment/ CSS Containment Module Level 1] ([https://www.w3.org/TR/2017/WD-css-contain-1-20170221/ FPWD]) 'contain' property, size/layout, style, paint. [https://bugzilla.mozilla.org/show_bug.cgi?id=1150081 metabug]


==== Multi-column ====
==== Scroll Anchoring ====
* [https://drafts.csswg.org/css-multicol/ CSS Multi-column Layout] ([https://www.w3.org/TR/css3-multicol/ TR WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=684062 metabug]
* [spec?] [metabug?]
** unprefixing, [https://bugzilla.mozilla.org/show_bug.cgi?id=616436 column-span], a11y bug hack removal, column-break
** Alias page-break-* to break-*: https://bugzilla.mozilla.org/show_bug.cgi?id=775618
(Jen has a demo of bugs / test page at http://labs.jensimmons.com/examples/multicolumn-3-bug-demo.html)
 
==== Fonts Level 4 ====
For Variable Fonts support in particular:
* Bugzilla for Variable Fonts: https://bugzilla.mozilla.org/show_bug.cgi?id=1302685
* [https://drafts.csswg.org/css-fonts-4/ Fonts 4], [https://bugzilla.mozilla.org/show_bug.cgi?id=css-fonts-4 metabug]
(reprioritize Fonts Level 4 accordingly once we have Variable Fonts)


==== Values and Units 3 ====
==== Values and Units 3 ====
Line 71: Line 46:
* re-prioritize Values and Units 3 once calc fixes have landed.
* re-prioritize Values and Units 3 once calc fixes have landed.
* [ ] attr function (at risk) — very useful in combination with CSS Shapes, in the context of a CMS
* [ ] attr function (at risk) — very useful in combination with CSS Shapes, in the context of a CMS
==== CSS Color Level 4 ====
[https://drafts.csswg.org/css-color-4/ CSS Color Module Level 4] (ED), [https://bugzilla.mozilla.org/show_bug.cgi?id=1352753 metabug]
* Color improvements (wide gamut, color correction, note CSS color correction preffed off)
Implement correct color management of CSS colors (which is really earlier levels of CSS color).
==== Inline Layout ====
* [https://drafts.csswg.org/css-inline/ CSS Inline Layout Module Level 3] ([https://www.w3.org/TR/css-inline-3/ TR WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1312611 metabug]
** focusing for now on CSS Initial-letter related features ([https://bugzilla.mozilla.org/show_bug.cgi?id=1273019 initial-letter * metabug])
*** one (implementation design) blocker issue: https://github.com/w3c/csswg-drafts/issues/743


==== SVG properties in CSS ====
==== SVG properties in CSS ====
This bit from SVG2:
This bit from SVG2:
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1383650 1383650: Implement SVG geometry properties in CSS]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1383650 1383650: Implement SVG geometry properties in CSS]
==== Grid Level 2 ====
Grid Level 2 AKA subgrid (use-cases, a11y implications)
* [https://drafts.csswg.org/css-grid-2/ CSS Grid level 2] specifically [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=subgrid for subgrid]
* doing some exploratory implementing, design may (hopefully likely) change accordingly
* see also for quick use-cases / tutorial:
** http://fantasai.inkedblade.net/style/discuss/subgrid-markup/


==== Media Queries 4 ====
==== Media Queries 4 ====
Line 94: Line 65:
** [https://logs.csswg.org/irc.w3.org/css/2017-08-02/#e841291 2017-08-02 CSSWG resolved to take to CR]
** [https://logs.csswg.org/irc.w3.org/css/2017-08-02/#e841291 2017-08-02 CSSWG resolved to take to CR]
** Also [https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion prefers-reduced-motion] from Level 5 ([https://bugzilla.mozilla.org/show_bug.cgi?id=1365045 #1365045])
** Also [https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion prefers-reduced-motion] from Level 5 ([https://bugzilla.mozilla.org/show_bug.cgi?id=1365045 #1365045])
==== Inline Layout ====
* [https://drafts.csswg.org/css-inline/ CSS Inline Layout Module Level 3] ([https://www.w3.org/TR/css-inline-3/ TR WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1312611 metabug]
** focusing for now on CSS Initial-letter related features ([https://bugzilla.mozilla.org/show_bug.cgi?id=1273019 initial-letter * metabug])
*** one (implementation design) blocker issue: https://github.com/w3c/csswg-drafts/issues/743
==== Scrollbar Styling ====
Spec in editor's draft - many requests for this
* https://drafts.csswg.org/css-scrollbars-1/
==== Multi-column ====
* [https://drafts.csswg.org/css-multicol/ CSS Multi-column Layout] ([https://www.w3.org/TR/css3-multicol/ TR WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=684062 metabug]
** unprefixing, [https://bugzilla.mozilla.org/show_bug.cgi?id=616436 column-span], a11y bug hack removal, column-break
** Alias page-break-* to break-*: https://bugzilla.mozilla.org/show_bug.cgi?id=775618
(Jen has a demo of bugs / test page at http://labs.jensimmons.com/examples/multicolumn-3-bug-demo.html)
==== Box Alignment ====
* [https://drafts.csswg.org/css-align/ CSS Box Alignment] ([https://www.w3.org/TR/css-align-3/ WD]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1105570 metabug]
** all properties for blocks (e.g. [https://bugzilla.mozilla.org/show_bug.cgi?id=1105571 1105571])
** and some details for flexbox (see metabug 1105570 Depends on)
** spec CR depends on resolving [https://github.com/w3c/csswg-drafts/labels/css-align-3 open css-align-3 issues]


==== Container Queries Prerequisites ====
==== Container Queries Prerequisites ====
Line 103: Line 95:
* one proposal: https://tomhodgins.github.io/element-queries-spec/element-queries.html
* one proposal: https://tomhodgins.github.io/element-queries-spec/element-queries.html


==== Better Print Support ====
==== Scroll Snap update ====
Start looking at what specs and features would significantly improve print support. Much of this is testing and bugfixing edgecases of existing features, some of it may require or benefit from new specs/features.
* [https://drafts.csswg.org/css-scroll-snap-1/ Scroll Snap] ([https://www.w3.org/TR/css-scroll-snap-1/ CR]), [https://bugzilla.mozilla.org/show_bug.cgi?id=1231777 metabug]
* [https://drafts.csswg.org/css-page-3/ CSS Paged Media Module Level 3] ([https://www.w3.org/TR/css3-page/ old 2013 WD]) [https://bugzilla.mozilla.org/show_bug.cgi?id=286443 metabug]
** Fix [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=%22scroll+snap%22 related bugs]
More specs / features in particular TBD.
 
==== CSS Color Level 4 ====
[https://drafts.csswg.org/css-color-4/ CSS Color Module Level 4] (ED), [https://bugzilla.mozilla.org/show_bug.cgi?id=1352753 metabug]
* Color improvements (wide gamut, color correction, note CSS color correction preffed off)


==== Motion Path ====
Implement correct color management of CSS colors (which is really earlier levels of CSS color).
* [https://drafts.fxtf.org/motion-1/ Motion Path Module Level 1]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1186329 meta bug]


==== CSS Images 3 ====
==== CSS Images 3 ====
Line 119: Line 112:
* [https://bugzilla.mozilla.org/show_bug.cgi?id=856337 image-rendering: pixelated]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=856337 image-rendering: pixelated]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1288941 position syntax in radial-gradient()]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1288941 position syntax in radial-gradient()]
=== 2018 Lower Priorities ===
Features or areas that distinctly got lower support during [[Yallhands]] Layout team prioritization discussions.
==== Better Print Support ====
Start looking at what specs and features would significantly improve print support. Much of this is testing and bugfixing edgecases of existing features, some of it may require or benefit from new specs/features.
* [https://drafts.csswg.org/css-page-3/ CSS Paged Media Module Level 3] ([https://www.w3.org/TR/css3-page/ old 2013 WD]) [https://bugzilla.mozilla.org/show_bug.cgi?id=286443 metabug]
More specs / features in particular TBD.
==== text-decoration-skip ====
* Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=812990
* parity with Chrome


=== Actively Implementing ===
=== Actively Implementing ===

Revision as of 23:30, 15 December 2017

This is the Mozilla wiki home page for Cascading Style Sheets (CSS), one of several areas of Open Web Standards.

CSS

Platform priorities

The following CSS specs/proposals are a priority for the Platform.

2018 Priorities

These are *in progress* 2018 Priorities for CSS features in Firefox.

(currently being discussed at Yallhands in Austin, Texas)

Critical Fixes

Critical fixes to features or larger specs we already support (more important than new features in general)

Fonts Level 4

For Variable Fonts support in particular:

(reprioritize Fonts Level 4 accordingly once we have Variable Fonts)

Motion Path

Sizing

CSS Intrinsic & Extrinsic Sizing Module Level 3 (WD) metabug

Shapes

Containment

Scroll Anchoring

  • [spec?] [metabug?]

Values and Units 3

CSS Values and Units Module Level 3 (CR) metabug

  • [ ] calc() function in particular. metabug
  • re-prioritize Values and Units 3 once calc fixes have landed.
  • [ ] attr function (at risk) — very useful in combination with CSS Shapes, in the context of a CMS

SVG properties in CSS

This bit from SVG2:

Grid Level 2

Grid Level 2 AKA subgrid (use-cases, a11y implications)

Media Queries 4

Inline Layout

Scrollbar Styling

Spec in editor's draft - many requests for this

Multi-column

(Jen has a demo of bugs / test page at http://labs.jensimmons.com/examples/multicolumn-3-bug-demo.html)

Box Alignment

Container Queries Prerequisites

There's a lot of anecdotal demand for Container Queries / Element Queries. See replies here:

We should at least figure out what features / bug fixes we would need to address to even consider something like Container Queries (which we should also give input on)

Scroll Snap update

CSS Color Level 4

CSS Color Module Level 4 (ED), metabug

  • Color improvements (wide gamut, color correction, note CSS color correction preffed off)

Implement correct color management of CSS colors (which is really earlier levels of CSS color).

CSS Images 3

2018 Lower Priorities

Features or areas that distinctly got lower support during Yallhands Layout team prioritization discussions.

Better Print Support

Start looking at what specs and features would significantly improve print support. Much of this is testing and bugfixing edgecases of existing features, some of it may require or benefit from new specs/features.

More specs / features in particular TBD.

text-decoration-skip

Actively Implementing

Beyond the above priorities, we should continue to actively implement, fix bugs on the following:

Flexbox

Mozilla has a pretty solid complete Flexbox (W3C CR, just waiting on feature-interaction tests to go PR) implementation. We are working on some fixes to make it even better, e.g.

Grid

3D Transforms

Masking

Text Decoration

CSS Text Decoration Module Level 3 (2013 CR) (metabug), e.g.:

Writing Modes

CSS Writing Modes Level 3 (2015 CR) (metabug)

Fonts Level 3

Wrap-up the few remaining bugs, or declare that we're done (e.g. font-variant as a descriptor?)

Under the hood and related

Evaluating

Font Rendering Controls

CSS Font Rendering Controls Module Level 1 (ED)

Font Loading

CSS Font Loading Module Level 3 https://developer.mozilla.org/en-US/docs/Web/API/CSS_Font_Loading_API shipped in 41

  • CSS Font Loading Improvements, Multiple bugs

Other

  • font inflation removed
  • CSS Transform properties (shorthands)

Related HTML5

HTML5 layout and presentation related work:

Recent CRs

Cascading and Inheritance

Upcoming CRs

These CRs are expected in 2017:

For all potential CRs:

  • Which browsers have openly announced implementations or intent to implement? (links?)
  • Box Alignment (see above)

Text Level 3

Selectors 4

Selectors 4 (need list of changes since 3), metabug

  • No explicit dependency on Stylo, just lower priority
  • Selectors4 remaining features
    • CSS ::selection fixes + unprefixing
    • ... remaining new features? (JS)

Shipping Soon

As the above priorities get implemented, moving down here to note we're waiting for them to ship.

Image Values and Replaced Content

[1] (CR)

  • image() function
  • [ ] xywh fragment syntax

Style sheet APIs for Add-ons

  • style sheet APIs in add-ons SDK / loading async APIs (to be handled by stylo)

Filter Effects Level 2

Device Adaptation

CSS Device Adaptation Module Level 1 (WD)

Houdini

  • CSS Houdini - see inside for Houdini implementation thoughts/plan

properties

Please add subpages for each (unprefixed) CSS property in alphabetical order.

in development

CSS properties which have not yet made it to a Candidate Recommendation (or later), or are only implemented in the wild in prefixed form.

new pseudo-classes

new properties

See Also