- From: Marat Tanalin | tanalin.com <mtanalin@yandex.ru>
- Date: Wed, 29 Feb 2012 03:17:45 +0400
- To: Tab Atkins Jr. <jackalmage@gmail.com>
- Cc: Lev Solntsev <greli@mail.ru>,"www-style@w3.org" <www-style@w3.org>
A possible option is to allow rgba() as direct background-image property value -- without redundant image() function-wrapper. 28.02.2012, 19:57, "Tab Atkins Jr." <jackalmage@gmail.com>: > On Tue, Feb 28, 2012 at 2:11 AM, Lev Solntsev <greli@mail.ru> wrote: > >> Of course I can use gradient, Image() or whatever. But isn't it a hack and >> workaround while there is a more obvious way for authors, is it? >> Also I have concerns about performance issues in browsers and >> those concerns contradict to accessibility—what web was created for. >> >> http://www.w3.org/Style/CSS/ says that “Cascading Style Sheets (CSS) >> is a simple mechanism for adding style (e.g., fonts, colors, spacing) >> to Web documents.” >> >> Using any of these workarounds make things more complex than it could be. > > Lea gave the main reason why it would be difficult to define - if you > have linked up property-lists, like in the background-* properties (or > the transition-*, or the animation-*, etc.), you typically link up the > corresponding entries in order to form a full set of properties. > background-color doesn't work like this - if you specify a single > background-color, you want it to match up with the *last* background > layer, not the first. This is different from how property lists work > everywhere else in the language. It's also unclear what would happen > if you specified multiple background-colors - would you start matching > them from the front instead, or continue matching them against the > end, so the first color is placed in the second-to-last background > layer, etc.? > > We could have, several years ago when multiple background layers were > first introduced, made background-color consistent, but that would > mean that the vastly more common case (just wanting a single color at > the end) would require a long list like "background-color: > transparent, transparent, transparent, transparent, blue;". > > So, this is an optimization problem. The simplest solution of just > making background-color work just like the other properties (which we > can't do anymore anyway) would be very inconvenient in the vast > majority of cases. A more complicated solution making > background-color "do the right thing" when you give a single color > would be inconsistent with the rest of the language, and thus hard to > learn. Instead, we hacked around the issue and created ways of > producing solid-color images, which is a simple way to solve your > reasonably rare case. It's not perfect, but it's the least bad of the > solutions (in our judgement). > > ~TJ
Received on Tuesday, 28 February 2012 23:18:17 UTC