Re: [csswg-drafts] [css-writing-modes] Does vertical writing mode of an HTML body element cause an orthogonal flow? (#3066)

The CSS Working Group just discussed `Does vertical writing mode of an HTML body element cause an orthogonal flow?`, and agreed to the following:

* `RESOLVED: proposed resolution: Propagate direction, and writing mode from the body to the root without affecting computed styles w/optional text-orientation`

<details><summary>The full IRC log of that discussion</summary>
&lt;Rossen_> Topic: Does vertical writing mode of an HTML body element cause an orthogonal flow?<br>
&lt;Rossen_> github: https://github.com/w3c/csswg-drafts/issues/3066<br>
&lt;una> fantasai: This deals w/the fact that we have writing mode propogation from writing mode to HTML tha tis not very consistently implemented<br>
&lt;una> ... it seems to me that we should propogate it to the HTML elem and consequently not have an orthogonal flow bc its on the the entire doc, not the root element<br>
&lt;una> Rossen_: so this is only the case when writing mode is specified ont he body only<br>
&lt;una> fantasai: whether you specify one on the body or not, we're basically ignoring it<br>
&lt;una> Rossen_: you end up w/double scrollbars sometimes on the wrong sides<br>
&lt;una> fantasai: Edge doesn't do that<br>
&lt;una> ... my proposal would be to do what Edge did<br>
&lt;una> ... theres a few things that need to be fixed, but the proposed resolution is to go w/that Edge did which is that the body writing mode is propogat4ed to both the root element and the writing block<br>
&lt;una> AmeliaBR: so it would be treated the same as if you set it on the HTML<br>
&lt;una> Rossen_: as an overwrite<br>
&lt;una> emilio: there is a viewport implementation, but the root element style is different<br>
&lt;una> Rossen_: wish we had a time machine to go back and have fixed this when it was originally done<br>
&lt;una> fantasai: there are margin-collapsing bugs<br>
&lt;una> ... we resolved to propogate things before but there are some side effects<br>
&lt;una> koji: in chrome, we used to track the propogate and we resolved not to propogate and removed the code<br>
&lt;una> fantasai: really? i remember it wasn't possible<br>
&lt;una> florian: IIRC direction does not propogate<br>
&lt;fantasai> s/possible/possible due to compat/<br>
&lt;una> emilio: we should use a computed value propogation ?<br>
&lt;una> dbaron: the way the spec describes this propogation, it is not affecting the computed styles<br>
&lt;una> koji: only the principle writing mode is affected but no style propogation<br>
&lt;una> dbaron: if i read what the spec says literally - it is saying tha ti fyou set writing mode on body to vertical LR<br>
&lt;una> ... you have an initail containing block fo rvertical LR containing a block for the body element which is seperate<br>
&lt;una> florian: either dont do any propogation at all or have all of those things use the same writing mode<br>
&lt;una> koji: propogation leads to conflicts<br>
&lt;una> dbaron: the hardest part of style is changing the computed styles, if you want to fix this propogation you want to make the propgat4ed val also apply to the block for the elem<br>
&lt;una> ... without messing with styles at all, making it apply to both the block and the styles for the html<br>
&lt;una> florian: we added propogation bc it felt necessary and i dont think we can remove it<br>
&lt;una> fantasai: my recollection was compat requirements for ebooks, which is why we have it<br>
&lt;una> emilio: batch propogates writing mode props<br>
&lt;una> ... direction, writing mode, etc.<br>
&lt;una> fantasai: i think we're propogating the full set, doing part of it will get weirdly inconsistent<br>
&lt;una> ... writing mode, direction, text orientation are the set of props that determine the direction mapping<br>
&lt;una> ... i think text-orientation won't have any effect on the intitial containing block anyway<br>
&lt;dbaron> s/you have an initail containing block fo rvertical LR containing a block for the body element which is seperate/you have an initial containing block that's vertical-lr containing a block for the html element that's horizontal containing a block for the body that's vertical-lr/<br>
&lt;Rossen_> q?<br>
&lt;una> Rossen_: so are we leaning towards that resolution that defined the propogation without affecting computed styles?<br>
&lt;una> ... so the style subsytem doesn't have to be complex, but the experience makes sense and it avoids orthogonal flow changes when they're not needed<br>
&lt;una> emilio: it'll be weird if you have a pseudo element but i guess thats not very common<br>
&lt;una> iank_: I'm a big concerned about the perf implications<br>
&lt;una> Rossen_: let's evaluate the perf once you have a patch that actually does it<br>
&lt;emilio> s/a pseudo-element/a pseudo-element in the root element<br>
&lt;una> ... in terms of behavior the proposed resolution is to add from body to the root element, the propogration &amp; logic<br>
&lt;una> ? : is this for any root element?<br>
&lt;una> Rossen_: I remember we didn't do this for SVG<br>
&lt;astearns> s/?/heycam/<br>
&lt;una> AmeliaBR: is there a reason not to do it for SVG?<br>
&lt;una> Rossen_: we didn't have body element in SVG<br>
&lt;una> AmeliaBR: the propogation doesn't apply but the fact that the root element defines a principle writing mode for the document should apply to SVG<br>
&lt;una> Rossen_ &amp; fantasai: sure<br>
&lt;una> iank_: what happens to props like border-block-end?<br>
&lt;una> fantasai: for propogating the user values, theyre resolved before writing implementation<br>
&lt;una> iank_: I'm concerned about low-end device perf<br>
&lt;una> Rossen_: let's talk abotu it when we have a little more info<br>
&lt;una> AmeliaBR: so is the resolution full propogation from the body to the root<br>
&lt;una> Rossen_: progotat4e direction, writing mode, and text orientation from the body to the root without affecting computed styles<br>
&lt;astearns> s/progotat4e/propogate/<br>
&lt;una> fantasai: the case of the document specifying vertical text orientation on the entire document and also being RTL is an unusual use case<br>
&lt;una> Rossen_: the proposed resolution is the same minus text-orientation<br>
&lt;una> fantasai: we could say propagated text orientation is optional<br>
&lt;una> proposed resolution: propagate direction, and writing mode from the body to the root without affecting computed styles w/optional text-orientation<br>
&lt;una> RESOLVED: proposed resolution: Propagate direction, and writing mode from the body to the root without affecting computed styles w/optional text-orientation<br>
&lt;una> fantasai: we'll need an implementation report and some bug fixes<br>
&lt;una> Rossen_: is it vastly different than what was done before?<br>
&lt;AmeliaBR> s/RESOLVED: proposed resolution:/RESOLVED:/<br>
&lt;una> fantasai: it needs an update<br>
&lt;una> florian: we're a week worth of work away from making it a rec - bug fixing and updating the implementation report<br>
&lt;Rossen_> github: topic<br>
&lt;Rossen_> github: end topic<br>
&lt;Rossen_> github: endtopic<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/3066#issuecomment-499111764 using your GitHub account

Received on Wednesday, 5 June 2019 14:39:25 UTC