- From: Eli Morris-Heft <dai@doublefishstudios.com>
- Date: Fri, 09 May 2008 09:58:39 -0500
- To: Alan Gresley <alan@css-class.com>
- CC: Brad Kemper <brkemper@comcast.net>, "www-style@w3.org list" <www-style@w3.org>
I apologize in advance for the length here. I'm feeling verbose today. ^^ Alan Gresley wrote: >> box-shadow: none | <shadow> [inner | outer] [, <shadow> [inner | outer]]* >> where <shadow> is: [<length> <length> <length>? || <color>] > > Ok, the default could be. > > 4px > > and optional keywords (in brackets) > > 4px(even) - no graduation. > 4px(inner) > 4px(electric) > 4px(ghostly) > 4px(foggy) > 4px(cloudy) Whoa, there. If I may be so bold, I think this is the *wrong* way to approach this. This is an entirely new sort of format to be using for values of CSS properties, and I'm not sure it buys us anything over just using keywords. Plus, there're already kinds of values that use parentheses, and they generally indicate functions, and don't have names that change: rgba(), url(), hsla(), etc. Making UAs parse for these when you could have 4px(), -3px(), 1em(), 0.5in(), 18cm(), etc., is a nightmare. Setting aside that "inner" wouldn't control the same kind of thing "cloudy" might, and that I don't know how I'd draw an "electric" shadow, I think that (a) UAs would have a heck of a time trying to figure out what to do with this, (b) it would make UA implementations vastly different and unpredictable, and (c) as a developer, I happen to think this is a pretty confusing syntax. Having two lengths for positioning, a possible length indicating the extent of the blur on the shadow (which, keep in mind, doesn't extend the shadow any; it just makes the outer edges and portions more blurry), a possible color, and an indication as to whether it's an outer or inner shadow is perfectly fine for here, I think. Eli Morris-Heft dai@doublefishstudios.com
Received on Friday, 9 May 2008 14:59:17 UTC