W3C home > Mailing lists > Public > public-css-archive@w3.org > October 2016

Re: [csswg-drafts] [css-writing-modes][css-pseudo][css-inline] text-combine-upright and initial-letter

From: Florian Rivoal via GitHub <sysbot+gh@w3.org>
Date: Thu, 27 Oct 2016 09:29:47 +0000
To: public-css-archive@w3.org
Message-ID: <issue_comment.created-256592938-1477560585-sysbot+gh@w3.org>
One part of the problem is that as far as I can tell, initial-letter 
does not make sense if you apply it to part of the run of characters 
grouped by text-combine-upright. It can only make sense it you apply 
to all of it (or none of it). In turn, that problem may only be 
relevant if it is possible to select only a part of the run of 
characters grouped by text-combine-upright.

I find the rules in 
https://drafts.csswg.org/css-writing-modes-3/#text-combine-runs hard 
to understand, so I think, but I am not sure, that it would not be 
possible to try and apply initial-letter (or any other property for 
that matter) to part of a run of characters grouped by 
text-combine-upright using a regular element (e.g. `<span>`) because 
the presence of that element would create a box, which get in the way 
of creating that run. What the different browsers do on 
http://output.jsbin.com/xacicok/ seems to support that, but at the 
same time they're all doing something different, so I'm not 100% sure.
 Can someone who understands the spec,  look at 
http://output.jsbin.com/xacicok/ in various browsers, and help me 
* for the third example on the first row, which browser is following 
the spec
* for the third example on the second row, whether Edge (which is the 
only one to support text-combine-upright: digits) follows the spec or 

If it is the case that you cannot apply a property to part of a run of
 characters grouped by text-combine-upright using a regular element, 
then it would make sense for `::first-letter` not to be able to do 
that either. But I can think of at two ways that could be prevented:
- `::first-letter` matches a single letter, creates a box, and applies
 a property to it. The existence of that box boundary prevents the 
creation of a run of characters grouped by text-combine-upright that 
would contain both the first-letter and the one(s) after it. 
(everybody except Edge with text-combine-upright:all seems to be doing
 a variant of this, but interestingly, different variants of it, not 
always aligned with what they did with a span)
- `::first-letter` is defined not to match characters that would 
otherwise be in a run of characters grouped by text-combine-upright, 
so that we don't run into the problem (this appears to be what Edge is
 doing with text-combine-upright:all, but not with 
text-combine-upright: digits)

Either way, it is possible that the spec already defines this, but the
 text is tricky enough that I am not sure. My best bet is that Chrome 
is doing the right thing with `text-combine-upright: all`  with 
`::first-letter` but not `<span>`, and that Edge is doing the right 
thing for `text-combine-upright: digits` with `::first-letter` but not
 `<span>`, but I am not sure.

If the specs are already defining this, rephrasing and/or more 
examples and/or more notes would be very welcome. If they're not, they

GitHub Notification of comment by frivoal
Please view or discuss this issue at 
using your GitHub account
Received on Thursday, 27 October 2016 09:29:53 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 5 July 2022 06:41:04 UTC