-
Notifications
You must be signed in to change notification settings - Fork 715
[css-text-decor] Should text-decoration-skip apply to overline and line-through? #711
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
cc @drott |
I think it makes sense for all line types and styles and giving the author the flexibility to decide. The implementation I have almost ready for Chrome does it for all line positions and styles. |
That gives author flexibility, yes, but is that what author wants? I don't know. Especially if you are going to make |
Good point, yes, I believe we can split this into two problems: What should |
Oh, do we have However, the problem may still be valid. If author decides to use a different value for underline, they would effectively need to specify the value everywhere when there is a If that is something we want, then I have no idea why |
There's no |
From what you wrote, it looks to me that it is more problematic for I agree your use case of mixing underline and strikethrough is valid, and from a test, WebKit skips underlines but not strikethrough, so intentionally or not, WebKit doesn't break your use case. |
On second thought, I didn't answer to your question; do you think inherited is an orthogonal issue to this issue, or is it questionable if I think there are valid cases where inherited is useful. In some styles, underlines skipping space characters are preferred. It's probably more useful to inherit than to propagate. For On the other hand, your use case is valid, so I'm wondering whether we should solve this by line type, or by inherited-or-not, or both. |
That really depends on how we spec it. For example, if
then author would just need to specify |
Sorry, I can't understand how inherited or not affects your example -- I mean, in your example, the result looks the same to me even when it inherits. Could you point out what I missed? |
Hmmm, if I don't think we usually mix inherited and non-inherited properties in one shorthand property. And if it is expected to be overridden whenever |
Yeah, we should probably not to inherit if it was part of the shorthand, so agree these two are linked. I'm not sure whether one ways works better than the other, in both ways, and also not sure how much it matters to the original issue -- to help authors wanting to skip-ink for underlines but not for strikethrough. By making not to inherit (and thus not part of the shorthand), we lose cases where authors want to specify the underline styles ( These cases are not very common I guess and ok to ignore if needed, but what will authors benefit by making not to inherit (and make it part of shorthand)? And how does it help |
Oh wait, commented too early, I think I understand how it help the use case, if it propagates. I think that's what you meant? So the question is whether propagation works better than inherited or not? |
I'd like to have more of this list. Do you have suggestions to add/change? |
Looking at your second usecase, it seems I didn't correctly understand how If |
Thank you, updated. |
I don't think using auto as a magical value which applies ink skip to underline but not to line-through is the right way to go, because that stops author from specifying any other values. I think the two use cases outweigh the flexibility to apply ink skip on line-through. If we cannot figure out a simple way to make them work, I guess we should just say ink skip doesn't apply to line-through. |
Another solution is, yeah, a separate property for ink skip. It seems to me you probably want ink skip to use the propagation way, but other values to use inheritance way. |
Ok, let's try to summary possible options to solve
Did I list all what were discussed? |
I think yes. |
(adding myself to the thread to keep track of progress) |
I just filed on http://crbug.com/670599 and found this issue by drott comment there, just want to add my use case and 2cent, I wanted to add |
I don't quite believe you want to ship something like this by default: |
@upsuper’s screenshot made me wonder whether there should be another value for
The most important reason (in Western typography) to desire Then, this would make more sense: s, strike, del {
text-decoration: line-through;
text-decoration-skip: ink;
text-line-through-position: over; /* over unspecified “middle”, i.e. above x-height */
} Should I move this into a new issue? |
Let's see if anyone else has options at conf call. Options from this discussion is summarized in this comment.
I agree.
Yeah, I think so. |
After reading other comments here, I am also okay with option 3 from Koji's comment. |
@Crissov Yes, well, diacritics matter, and are common in languages other than English. :) Also other scripts are more likely to have ascenders above the overline height, and would naturally want them to skip or not skip the same as descenders. Fwiw I'm also OK with ink-skipping to not apply to line-through; I can't think of cases where it'd be appropriate for it to skip. Adding i18n in case they have input on that point. |
WG resolved that ink-skipping should apply to overlines as well as underlines, but not line-throughs. |
Edited. |
Discussion resolved in WG issue tracker: w3c/csswg-drafts#711 BUG=670599 R=kojii CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Review-Url: https://codereview.chromium.org/2600453003 Cr-Commit-Position: refs/heads/master@{#444343}
It seems currently all the usecase of
text-decoration-skip: ink
is about underline. It is not clear whether this should also be applied tooverline
andline-through
. My guess isoverline
may want that as well, but notline-through
.cc @kojiishi @litherum
The text was updated successfully, but these errors were encountered: