cssremedy
cssremedy copied to clipboard
Including upcoming properties that aren't in browsers yet?
Are you also interested in properties that haven't been (broadly) implemented yet, but for which we know the initial value and legacy behavior will not be the best behavior, and lets people opt into better behavior? If yes, I suggest:
:root { line-sizing: normal; }
and
:root {
text-spacing: trim-start allow-end trim-adjacent ideograph-alpha ideograph-numeric;
}
I absolutely want to include CSS for properties that "that haven't been broadly implemented yet, but for which we know the initial value and legacy behavior will not be the best behavior". In many ways, that's the whole point. To help with properties that shipped in the past like this... and the ones coming next in the future. Also, I think it might be very satisfying for the CSSWG to have a place to "correct" such things — if in fact this project becomes such a place / works out.
It doesn't bother me that we might ship code that doesn't do anything yet (because perhaps the property is in zero browsers, or is used by 0.0000000% of developers). As long as there's not too much of it. I'd rather put things in now, so we remember to, then forget about it and be behind.
Although, at the same time.... we don't want to put stuff in here for specs that will never take off. That no browser will ever implement... so it's a balance, I think.
Meanwhile, let's include the two you just named.
Can you write a comment for each to include that explains what they do? Or links to the spec. A super short one-line comment. A clue, really.
Actually, I'm thinking this was a bad idea, and we should revert. Sorry for the confusion.
text-spacing (used here) isn't implemented anywhere, and might end up being significantly revised before it is.
Even though I'd love to be able to use this, I'd recommend against using it in css-remedy at this point:
- If the syntax or semantics ends up changing between now and the time they're implemented, it won't do much good to have included a set of values.
- It may actually do harm: occasionally, people who really care about typography in CJK will put
<span>s around their punctuation, and manually do an approximation of whattext-spacingwould do using negative margins. If someone uses css-remedy and does that, and some day browsers implementtext-spacing, then their page will get twice the effect, and will be broken.
@frivoal do you recommend keeping :root { line-sizing: normal; } - or removing that as well?
Seems like there are two issues at play here:
- How solid should a spec be before we implement a remedy?
- The issue of "doing harm" here is related to #58 - does this belong in a
remindersfile with warnings?
do you recommend keeping :root { line-sizing: normal; } - or removing that as well?
Maybe? It's less clear cut. In theory, the problem is the same, but I don't believe people typically compensate for the lack of this feature in a way that would conflict with this feature when it exists.
I do think we should wait until new CSS is not changing drastically anymore. I don't want to ship something, a remedy or reminder, that turns out to be different once the spec is done. People will grab CSS Remedy, use it, and not update it on their project for potentially years.
I think it's fine if we ship something that will help in the future, if we are sure the syntax & what It does ins't going to change.
If it's still changing, we should wait. And if we don't know / aren't sure, then we should wait as well.