The Future of Style aggregates posts from various blogs that talk about the development of Cascading Style Sheets (CSS) [not development with Cascading Style Sheets]. While it is hosted by the W3C CSS Working Group, the content of the individual entries represent only the opinion of their respective authors and does not reflect the position of the CSS Working Group or the W3C.
background-attachment:local.an+b grammar changes in Syntax 3.font-size-adjust, font size availability.background-attachment: local positioning.The CSS Working Group is happy and proud to announce .net magazine chose CSS Flexible Box Layout Module, a specification of the Group, as their Best New Web Technology 2013 Net Award.
This a quite a big achievement for the CSS Working Group, showing the importance and relevance of our work. I would like to thank the authors and editors of that spec, and also all the contributors to the document, CSS WG members or external contributors, for their hard work and this important contribution to the future of the Web.

Daniel Glazman
W3C CSS Working Group Co-chair
W3C will be holding a Workshop in Paris, Publishing and the Open Web Platform in September of this year, 2013.
The question we pose is essentially this:
We are seeing the Web and the Web browser interface replace proprietary tools with Web-based applications and with hosted services.
If you are a commercial publisher in the print world you deal with authors, with proofreaders, with editors, probably both in-house and out-of-house, you maybe convert Word documents to InDesign or Quark or to XML to go to print, to XHTML to go to EPUB, to PDF for other distribution, and there’s a whole workflow in place to manage all that content in so many stages. Sometimes it’s a sophisticated CMS and sometimes it’s a shelf of CD-ROM archives!
What happens when we start to use the Web for publishing? What does that mean? I don’t mean writing blog entries (such as this one) and publishing them on the Web, although that’s certainly a form of publishing. What happens if your authors work directly in a Web browser, producing XML or XHTML or even HTML? What about managing revsions, proof-reading, copy-editing, indexing? What happens if you generate PDF using CSS and either some future formatting-aware Web browser or an application on a Web server that produces PDF directly? Must users be online or can reliable off-line applications be built for publishing?
Is the Open Web Platform today powerful enough to do everything that is needed?
Based on my own background in print and publishing, in graphic design and typography, I think there are some parts missing, but the point of the Workshop is to find out where W3C can change Web technologies to make it meet the needs of publishers.
In fact, the people who bring about change are the people who work on the tools, the people who write the specifications, the people who help with testing and early adoption, the people who give us feedback.
Our Paris Workshop is one of several places where you can get involved. But it is a place where you can also influence the direction of W3C’s work in the publishing field, and hence influence the future of publishing itself. To participate, see the Web site for the Workshop; it’s open to anyone who submits a position paper.
We're coming upon our sixth Test the Web Forward event happening this Friday in Tokyo. It's promising to be the best one yet with an impressive lineup of speakers and experts. Our keynote speaker and special guest is Shigeo Okamoto from the Ministry of Internal Affairs and Communications, who'll be delivering an opening message about the importance of Web standards in Japan.
For the first time, we'll be streaming the tech talks live on our Google+ Event page. The schedule is as follows:
| Tokyo | Sydney | London | San Francisco | |
|---|---|---|---|---|
| Friday June 7 | 7pm-10pm | 8pm-11pm | 11am-2pm | 3am-6am |
| Saturday June 8 | 9am-6pm | 10am-7pm | 12am-9am | (Fri) 5pm-2am |
The talks will be during the first 2 hours on Friday and first 1 hour on Saturday and will be archived afterward on our YouTube channel.
Remote participation is also very welcome and encouraged. If you'd like to join the test writing or drop in and review some tests, we'll be in #test in irc.w3.org and on Github: HTML Test Repo and CSS Test Repo. Also, on Twitter with #TestTWF.
The CSS Working Group has published an updated Working Draft of CSS Regions.
CSS Regions allows you to collect content in a named flow, then directly define where this content flows through boxes in a region chain.
This new draft contains many improvements to the CSSOM
section, as well as scattered improvements throughout. The
issues list for CSS Regions has gone from 24 in the last draft
to 4 today. The region-overset property has its new
name, and the flow-into property now has keywords that
choose whether an element or its content is placed into a named
flow. Region styling is now accessed through a
::region() pseudo-element instead of an
@region rule.
All of the changes since the last Working Draft are listed in the Changes section.
As always, please send feedback to www-style@w3.org
with the spec code ([css-regions]) and your
comment topic in the subject line. (Alternatively, you can email
one of the editors and ask them to forward your comment.)
The CSS Working Group has published an updated Working Draft of CSS Exclusions.
This draft was previously part of the CSS Exclusions and Shapes specification. Exclusions and Shapes have been split out into two separate specifications, and this draft contains only the Exclusions part. A new draft of CSS Shapes will follow shortly. Future levels of these specifications will describe how these two features interact.
CSS Exclusions allows content wrapping around any element, extending this functionality that has been limited to floats.
The first level of CSS Exclusions allows wrapping around the bounding box of an exclusion. This draft includes improvements to the exclusions processing model, a new value for wrap-flow, and clarification on how exclusions interact with writing modes.
All of the changes since the last Working Draft are listed in the Changes section.
As always, please send feedback to www-style@w3.org
with the spec code ([css-exclusions]) and your comment
topic in the subject line. (Alternatively, you can email one of the
editors and ask them to forward your comment.)
The CSS Working Group has published an updated Working Draft of Filter Effects.
Filter Effects allow applying filter operations like blur or color matrix on any graphical element.
The current version integrates
Changes since the last Working Draft are listed in the Changes section.
Please send feedback to the (archived)
public mailing list
public-fx@w3.org with the spec code
([filter-effects]) and your comment topic in the
subject line. (Alternatively, you can email one of the editors and
ask them to forward your comment.)
The CSS Working Group has published an updated Working Draft of CSS Box Alignment Level 3. CSS3 Box Alignment defines a common set of properties for aligning boxes within their containers in the various CSS box layout models: block layout, table layout, flex layout, and grid layout. In particular, it attempts to provide the horizontal and vetical alignment capabilities missing from CSS block layout and to tie that together with alignment models in tables, grid, and flexbox.
This draft is a revision of the previous First Public Working Draft: the range of values allowed in each alignment property has been extended and improved, and many details have been added on how exactly alignment works in various layout contexts, including absolutely-positioned layout.
Changes since the last publication are listed in the changes section. It’s still in the exploratory stages, but this revision starts the process of stabilizing the overall design.
As always, please send feedback to the (archived)
public mailing list
www-style@w3.org with the spec code ([css-align])
and your comment topic in the subject line. (Alternatively, you can
email one of the editors and ask them to forward your comment.)
@counter-style
width descriptor renamed to pad.getComputedStyle() for
grid layout properties.an+b syntax redefinition in CSS3
Syntax.The CSS Working Group has published an updated Working Draft of Selectors Level 4. Selectors is a pattern-matching syntax for identifying sets of elements in a document, and is used e.g. for applying CSS declarations to elements in a document tree.
Additions include some new selectors:
:blank for elements that are empty or contain only white
space, and
:placeholder-shown for inputs that are showing a placeholder.
Review and improved naming suggestions are particularly welcome on
these—and also on the
drag and drop pseudos.
Another important change is lifting restrictions on
:matches() and :not() to accept complex
selectors, and the definition of two profiles, one
for CSS matching and another for less performance-intensive uses
like querySelector. We particularly encourage
implementers to comment on whether this split is reasonable, or
whether different things should be included/excluded.
The Working Draft includes a list of changes since the previous WD.
As always, please send feedback to the (archived)
public mailing list
www-style@w3.org with the spec code ([selectors])
and your comment topic in the subject line. (Alternatively, you can
email one of the editors and ask them to forward your comment.)
align-self property values, like they do
in other layout modules such as flexbox (and also block)On April 12-13, Microsoft hosted a record-setting Test the Web Forward event to advance the Web by creating interoperability tests. Dozens of volunteers from Adobe, AT&T, Blackberry, Mozilla, and many other local companies joined us at our Seattle offices to learn about Web standards testing, how to write CSS and HTML tests, as well as the tools available for test suite management. Attendees from around the country - and even Canada – contributed to create a record-breaking 514 overall new tests.
The quality and correctness of different browsers’ HTML and CSS standards compliance continues to vary widely. The W3C requires independent tests of all normative requirements in a specification in order to move a W3C Web specification from a candidate recommendation to an official recommendation. These tests are used to ensure that at least two browsers fully support each normative statement. As you might imagine, creating all of these tests is daunting; HTML5 is expected to need well over 100,000 tests, to say nothing of CSS3 modules, WebApps, Media Extensions, etc. We have submitted thousands of test cases for HTML, CSS, and SVG that can be viewed at the W3C and the Internet Explorer Test Center, however more tests are still needed. These tests benefit all browsers – and ultimately the entire Web developer community – by ensuring a consistent, predictable behavior. As different browsers improve their same-markup support, we can all realize the promise of HTML5 and CSS3.
A few years ago, several members of the standards community turned to crowd-sourcing to help create new tests, this resulted in Test the Web Forward events.
With the sponsorship of major players like Microsoft, Adobe, Google, and Mozilla, the Web community has come together, running local test-writing sprints around the world—France, China, Australia, and the US. Each sprint not only generates hundreds of tests, but also engages with and educates Web developers about the specifications that make up the Web platform.
Our friends at Adobe were instrumental in setting up a successful event, building upon their experience in running previous events. In Seattle we kicked off the hack-a-thon on Friday night, with inspirational and informative presentations from Mozilla's fantasai (Elika Etemad), Adobe's Rebecca Hauck, and Microsoft's Kris Krueger, explaining why we need tests, what type of tests are available, and how to create them. Here’s a quick outline:
Stand-alone tests typically rely on visual verification: if a failure condition occurs, red content will show.
Reference tests compare a test against a visual reference that has no dependency on the feature being tested. Note that the test includes a link to the reference test against which is should be compared. For example, if you wanted to test that DIVs render background colors correctly, you might make a ref test using TABLEs.
Object Model tests depend on a JavaScript test harness; they verify that the object model reflects what static style sheets specify. For instance, this CSS media query test.
These presentations were followed by 2-minute pitches from Saturday's session test leaders on why participants might want to pick a particular focus (CSS Flexbox, Pointer Events, CSS Transforms, CSS OM, Backgrounds & Borders, Exclusions, or HTML5), though session participants were free to write tests against any API or spec they felt passionate about.

Following breakfast the next morning, participants broke up into three rooms with session leaders helping out in each. Each area was staffed by experts (in addition to the speakers from the previous evening): Arron Eicholz (Microsoft, CSS); Jacob Rossi (Microsoft, Pointer Events); Sylvain Galineau (Adobe [formerly Microsoft], CSS); Alan Stearns (Adobe, CSS); Dave Methvin (President of jQuery, HTML).
The leaders instructed everyone on how to determine where tests were needed and how to create code that tested the specific assertion that we wanted to capture. Volunteers could either work on their own, work in small groups, or get 1:1 help with the experts.
When all was said and done, the sprint generated 514 submitted tests, just edging out the record set by the Paris test sprint and setting a new bar for upcoming sprints to beat. After a few celebratory drinks, the end of the night saw the raffling off of a Surface Pro which was won by a student volunteer who joined us from the University of Washington.
In IE10, we have added support for a long list of new standard features across CSS, HTML, SVG and the DOM. We have published some of our test cases for these new features on our IE Test Center. We will be submitting more, but we still need help from the community to get the right tests written and move these specs forward.
We are excited to be part of the community working towards a more innovative and interoperable Web. We support several initiatives in this direction, like the recent donation of JavaScript documentation to Webplatform.org, or our continued efforts to simplify cross-browser testing with modern.ie. If you want to help move the Web forward, too, come and join us at one of the next Test the Web Forward events! In the meanwhile, you can learn how to contribute tests, or review existing tests online. To hear about upcoming events and to stay in touch with the rest of the Test the Web Forward community, please subscribe to our W3C mailing list: public-testtwf. If test writing sounds too intense, but you are still knowledgeable and passionate about the Web, you can get involved with the WebPlatform Docs project and help document the Web.
For more info and updates, follow our Internet Explorer developer relations handle on Twitter @IEDevChat, this initiative’s handle @testthewebfwd and in particular #testtwf.
We will keep you posted on upcoming events and we are looking forward to meeting you soon!
—John Jansen, Kris Krueger, Arron Eicholz, and Jacob Rossi – Internet Explorer
flow-into.:blank to match.For Mobile World Congress 2013, W3C worked with several developers including Tomomi Imura (Nokia), Steren Giannini (Joshfire), and Dominique (Dom) Hazaël-Massieux (W3C) on two Web applications to demonstrate some of the new capabilities of HTML5 and related technology. I asked some of them about their experiences creating a camera app, a photo gallery app, and the server-side technology to stitch them together. The resulting demo worked as follows:
The camera project began in the Core Mobile Web (Coremob) Community Group as a way to illustrate both the current capabilities and limitations of the Open Web Platform (OWP).
Ian: Tomomi, when did this project start?
Tomomi: Originally, the app was nothing more than a prototype I wrote for fun. John Kneeland, from Nokia also wanted to work an app that would showcase the capabilities of the OWP. The Coremob CG seemed like the right venue, and we developed the specs in the fall of 2012, shortly before a Coremob face-to-face meeting.
Ian: The Open Web Platform intends to lower the cost of cross-device development (see the related interview with Todd Anglin on the Kendo UI survey). As you built the camera app, what did you find was relatively easy to make work across devices? What was difficult (and how did you solve it)?
Tomomi: Creating a user interface that is platform independent is one of the keys to cross-platform development. When I created the UI for the camera app, I designed it to be independent of the platform's look-and-feel, so a common CSS was all I needed. Non-trivial CSS works fine on all targeted smartphone browsers so I can say that designing the UI was the easiest part. Also, canvas works as expected on most browsers so I did not need extra workaround to support cross-platform.
However, to be honest, it was not as easy to make it cross-platform as I initially expected. A big reason is that the app was meant to showcase new features, which means it relies on new Web technologies that are in the early phases of standardization and not yet broadly interoperable. I found there was no browser that implemented correctly all the APIs I used in the app. In particular, I struggled to use IndexedDB to write photos to local storage. At the time I was coding, only Firefox and IE10 had implemented IndexedDB according to specification. Chrome 18 (was the released version at that time. Now, finally Chrome 25 is out of beta) supports basic IndexedDB, but was using an older version of the specification with no blob support for the database. I had to write extra code to make the demo work on Chrome.
Beside the workaround code, I used PhoneGap for Windows Phone 8 because IE10 for mobile lacks HTML Media Capture capability, although all other features worked fine. This is a hybrid app that, I think, is useful for illustrating how to work with HTML5 in a transitional mode where features not yet available on certain platforms.
Ian: What would you like to do next with the camera app? It's an open source project - are you looking for help from the community on specific aspects?
Tomomi: We have a bunch of things in the pipeline, notably writing tutorials on all aspects of building this app (like providing camera access using HTML media capture, storing pics in IndexedDB, etc.). We also have a nice table with all the key features required to build this app and how well (or poorly) they are supported in different browsers. I definitely want to share our experience in more detail with developers. Before doing that, I plan to simplify some of the code (to remove some hacks). This will cause more browser incompatibility, but my goal is not to promote hacks and tricks, but rather working with Web standards.
Ian: Steren, Joshfire volunteered to be part of this project because you already had a Web-based gallery app. What has been your experience so far (generally) getting your app to work across different devices? In particular, the app works on some televisions. What has been your experience so far with Web technology on televisions?
Steren: Joshfire is creating tools to build applications for today's devices and the ones coming tomorrow. For us, Web technologies are the logical solution to build a multi-device application that is sharing the same codebase on all these devices. The Web Gallery was developed under this model: 80% of the code is shared by all the versions of the app, and the remaining 20% is just for layout adaptation, view hierarchies, and user interactions.
Web technologies have been selected by TV manufacturers as the official tool to build applications for connected TV. That's a good thing and their browsers are now getting better. It was not the case in 2011, where some TV browsers had critical bugs and suffered from major performance issues. Today, it is more easy to develop for TV, I would say it is similar to mobile web development.
Ian: From your perspective, what are the priority features of the Open Web Platform where you think we need to make progress in order to close the gap with native platforms?
Steren: I think developers need features, frameworks and documentation that will help them to build rich client side applications more easily. And to close the gap with native platforms, they also need to be able to access device specific sensors and features (as enabled by projects like Phonegap). Native platforms have application ecosystems that are more than simple URLs: they ask permissions, install locally and auto-update in background. I think the Open Web Platform should provide the same mechanisms. An important priority is also to identify browser problems in the implementation of the specifications. Today, developers notice too many implementation differences that do not appear to be a priority for browser manufacturers.
Ian: Dom, you built the server that hosted the camera and the gallery apps. What were your priorities in building the server? What solutions did you adopt?
Dom: As in any other project, my priority was to do as little as needed. In this case, the server mostly had to act as a go-between for the camera and gallery apps, receiving pictures from the former to display with with the latter.
I chose to develop a node.js-based solution, since I was confident it would let me assemble the various pieces I needed easily; also, one of the features that we were likely to use, Server-Sent-Events, is much easier to implement in an asynchronous environment such as the one provided by node.js.
Ian: We set up this apps to run in a local environment (that is, not on the Web). If we wanted to make available a Web version of these apps, what would you have to change in the server configuration? How would you deal with security? Privacy? Flooding our server with photos?
Dom: There are two options for having the app run in an open environment:
The first approach would require some changes in the camera app and the server-side component. The second would require a new client-side component, and would also benefit from different kinds of Denial of Service attack protection (e.g., rate limiting the number of pictures that can be uploaded, using techniques to avoid robot-based submissions, etc.).
I would probably handle privacy issues at a different layer. We would need a policy and a process to determine when and how a given picture can be posted (e.g., asking the submitted to vouch they're not posting a picture of someone without their agreement), and how pictures could be taken down.
Ian: Thank you all for the insights, and good luck with the evolution of these apps!
The CSS Working Group has published an updated Working Draft of CSS Grid Layout. This CSS module defines a two-dimensional grid-based layout system optimized for user interface design.
This is a major update: not only has the draft generally been reorganized and much of the prose rewritten to fill in missing details, avoid repetition, improve precision and terminology, and ensure alignment with Flexbox, but it’s switched to a new positioning model. The old grid layout model uses properties to indicate the starting row/column and the item’s span. The new grid layout model positions each edge of the item to a grid line.
There are tons of issues marked in the draft, such as:
We’re totally looking for feedback, particularly on syntax
issues, so please send comments to the (archived)
public mailing list
www-style@w3.org with the spec code
([css-grid-layout]) and your comment topic in the
subject line. (Alternatively, you can email one of the editors and
ask them to forward your comment.)
Comments have also been enabled on the cross-post over at CSS3.info. We strongly encourage feedback and suggestions for improvement from the design community!
The CSS Working Group has published an updated Candidate Recommendation of CSS Values and Units Level 3. This CSS3 module describes the common values and units that CSS properties accept and the syntax used for describing them in CSS property definitions.
This is publication mainly just incorporates some minor fixes and clarifications. It also defines the interaction of scrollbars and viewport units. Changes since the last publication are listed in the Changes section.
As always, please send feedback to the (archived)
public mailing list
www-style@w3.org with the spec code
(>>[css3-values]<<) and your comment topic
in the subject line. (Alternatively, you can email one of the
editors and ask them to forward your comment.)
color-correction is still
needed.nav-* properties to level 4.
Contact Web and TV and Opera about nav-* changes. Ask
for comments from WAI PF and SVG and any groups we asked for
previous Last Call.The CSS Working Group has published a first public Working Draft of the CSS Overflow Module Level 3.
This module describes:
This draft is still relatively early in development, but the group welcomes feedback on all aspects of the draft.
As always, please send feedback to the (archived)
public mailing list
www-style@w3.org with the spec code
([css-overflow-3]) and your comment topic in the
subject line.
#123abc to be a valid ID
selector, to match HTML5. Need to collect data on this.:nth-child()/etc don’t
require a parent: they’re based on siblings. This is a change from
Selectors Level 3 REC.:matches() to the specificity of the actual matched
selector.The CSS Working Group has published a Candidate Recommendation (and call for implementations) of the CSS Conditional Rules Module Level 3. This module describes the @media and @supports rules and associated APIs. It extends CSS level 2 by allowing nesting of certain at-rules inside ‘@media’ and adding the ‘@supports’ rule for conditional processing.
The working group is interested in feedback from authors and implementations, contributions to the test suite, and feedback on the tests in the test suite.
Changes since the last Working Draft are listed in the Changes section.
As always, please send feedback to the (archived)
public mailing list
www-style@w3.org with the spec code
([css3-conditional]) and your comment topic in the
subject line.
The Future of Style features:
If you have a post you want to add to this feed, post a link (or the whole thing) on the CSS3 Soapbox. If you own a blog with frequent posts about the future of CSS, and want to be added to this aggregator, please get in touch with fantasai.