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

On 11/01/2016 09:04, Florian Rivoal wrote:
> 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.

Isn't defining sensible default behaviour for a device what the UA 
stylesheet is for? I would expect that browsers running on devices with 
round and other types of non-rectangular display would include rules in 
their UA stylesheet that would make content display sensibly without any 
requirement for the user to include additional styles. However, in order 
to create these stylesheets, there needs to be CSS properties 
appropriate for styling content on non-rectangular displays.

Therefore, I would argue that no stage has been skipped. The first job 
of the CSS WG is to define the low-level features that can then be 
leveraged, by both by authors and user agents, to create stylesheets 
that apply to rounded screens. Once these have been defined, it will 
enable vendors to create UA stylesheets with sensible defaults for 
rounded-screens.

Also, I'm not sure it is appropriate for the WG to come up with 
pescriptive, high-level strategies for how content should be displayed 
on rounded screens. The content of UA stylesheets for desktop browsers 
is not defined by the WG, why should be it any different for a new class 
of device? Vendors are in the best position to experiment with their own 
equipment to see what works and what doesn't, and what works best for 
one device may not work best for another, depending on their 
characteristics. The goal of the WG should be to move quickly to define 
properties that are powerful and flexible enough to capture what they 
want to achieve. This will lessen the incentive for vendors to include 
unstandardised approaches, which then have to be reverse engineered into 
standards, as happened in the early days of the mobile web.

Jon

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

Received on Thursday, 14 January 2016 13:47:21 UTC