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

Re: [csswg-drafts] [css-color] clarify the value allowed for the gray() function, percentage or number

From: Deron Meranda via GitHub <sysbot+gh@w3.org>
Date: Tue, 25 Oct 2016 20:08:45 +0000
To: public-css-archive@w3.org
Message-ID: <issue_comment.created-256160101-1477425951-sysbot+gh@w3.org>
It's also worth mentioning again that whoever wrote the description 
for the gray function in the CSS draft also thought, at least 
momentarily, that ```gray(50%)``` was legal and represented a 
mid-level gray.   It may be more than just a typo, but perhaps an 
indicator there is a mismatch between intuition and the spec.

I suspect if you're using the ```lab``` or ```lch``` color functions 
you have some exposure to color theory, or you have at least had to 
read about them because those terms are not in the general public 
English vocabulary.  You may even know that the L* parameter is just a
 unitless dimension on an axis that was arbitrarily defined to be 
within the range 0 to 100.  Though even there, was the intent of that 
decision be that the numbers look like percentages without the %-sign?

But everyone knows "gray"., and people that use ```gray``` are 
probably relying on a more informal intuitive sense.  When using 
```rgb``` with percentage values it's intuitive that 0% should mean 
the minimum value for that color component and 100% means the maximum 
value.  And I would think a similar intuition would occur for people 
using ```gray```.  Even if they mistakenly thought ```gray(50%)``` 
would be the same as ```rgb(50% 50% 50%)```, which it is not, at least
 they would expect the two to be almost the same, which they are.  But
 certainly ```gray(50)``` is wildly different from ```rgb(50 50 
50)```.  And ```gray(255)``` is absurd, and one I suspect could be a 
common error.  But the intent of a percentage value is clear.

Which ever way is fine, but it has to be made clear the ```gray(<x> [/
 <y>])``` is syntactic sugar for ```lab(<x> 0 0 [/ <y>])```, and what 
the acceptable values for ```<x>``` are; and all three of ```gray```, 
```lab```, and ```lch``` should accept the same value types.

GitHub Notification of comment by dmeranda
Please view or discuss this issue at 
using your GitHub account
Received on Tuesday, 25 October 2016 20:08:51 UTC

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