[css-round-display] Non rectangular displays and the robustness of CSS

There's something that's been bothering me about round displays. Not a problem about anything being proposed in the current specification, but an unaddressed problem caused by the displays themselves.

One of the generally accepted design principles of CSS is robustness[1], meaning that when the environment where the content is displayed (or content being styled) is something the author did not anticipate, then CSS should still do something sensible. Even if things don't look quite like what the author intended, at least they remain readable, and avoid data-loss and overflow.

The problem with round displays is that they break that. If you take a simple HTML page, display it with the default UA stylesheet on a round display (or any non rectangular display), then some content is lost, hidden by the rounded corners.

That's bad, and I think it's a first in the history of CSS that we require authors to do something to their stylesheets to something as basic as displaying a single paragraph of text without content disappearing. Pretty much all pages authored before round screens need fixing, and that's terrible.

The current round display spec introduced various things that are useful for authors to design something that works well in a round display device. But I wonder if we skipped step 1, which should have been making sure that by default and without the authors asking for it, browsers do something sane on rounded displays.

Can we come up with some mechanism which in its default mode, does both of the following?
- is a no-op on a rectangular viewport, so that there's no backward compatibility issue
- ensures that no content gets lost due when the viewport is not rectangular

I'm not writing this to champion any particular solution, but I think we would do web authors (and round display users) a huge favor if we could figure this out.

Maybe maybe the initial value of shape-inside should compute to 'display' on the root element? Maybe on top of that we need to make it into a paged rather than continuous medium to deal with block direction overflow from that shape? Maybe something else entirely?

I am not sure. But I think we should solve it, and do that before non rectangular screens become too wide-spread, otherwise changing the default behavior will be a challenge.

 - Florian

[1] http://fantasai.inkedblade.net/weblog/2012/css-layout-evolution/#principles

Received on Monday, 11 January 2016 09:04:53 UTC