- From: Alan Gresley <alan@css-class.com>
- Date: Sat, 14 May 2011 09:44:00 +1000
- To: Brad Kemper <brad.kemper@gmail.com>
- CC: "Tab Atkins Jr." <jackalmage@gmail.com>, Simon Fraser <smfr@me.com>, www-style list <www-style@w3.org>
On 14/05/2011 3:05 AM, Brad Kemper wrote: > > On May 12, 2011, at 1:23 PM, Tab Atkins Jr. wrote: [snipped magic voodoo logic debate] >> The fact that it's tightly integrated with backgrounds is part of >> the badness. > > Bizzarre. Whatever damage you think this 'magic' causes would have a > very limited effect, because it is just two background properties > that affect each other, just as any other two background properties > will affect each other. For instance, the actual x/y positioning of > each drawn background tile in an element is affected by values from > 'background-position', 'background-repeat' ('space', 'round'), > 'background-origin', 'background-size', etc. These properties are all > designed to work well together, and that is what I am proposing too, > that 'background-rotate' and 'background-image' could also be > designed to work well together. I have not seen Tab's ways but I have to agree with Brad here. One test which use radial-gradient, background-position, background-size and background-repeat. <!doctype html> <style type="text/css"> div { height: 200px; width: 200px; background: rgb(51,51,51) -webkit-radial-gradient(rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -moz-radial-gradient(rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -ms-radial-gradient(rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background-size: 200px 200px; } </style> <div></div> Now if I wanted that 4 pointed star to appear a 45% (clockwise), I would have to use 4 radial-gradient layers and use the final layer 'background-color' for the color of the star. I presuming that I could get close but not close enough. If I wanted the star to have variation in color, then that's the end of the story. Another test using some value at the beginning of gradient (haven't a clue yet what it quite does but I like it anyway). <!doctype html> <style type="text/css"> div { height: 200px; width: 400px; } #one { background: rgb(51,51,51) -webkit-radial-gradient(-100%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -moz-radial-gradient(-100%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -ms-radial-gradient(-100%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background-size: 200px 200px; } #two { background: rgb(51,51,51) -webkit-radial-gradient(200%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -moz-radial-gradient(200%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background: rgb(51,51,51) -ms-radial-gradient(200%, rgba(51,51,51,0) 67.5%, rgba(220,220,255,1) 97.5%) -100px -100px; background-size: 200px 200px; } </style> <div id="one"></div> <div id="two"></div> Unlike the first simple star, this can not be created easy with multiple layers. A property like background-rotate would make it simple. [snip] > And by the way, even if there was not a 'background-rotate: auto' > that worked as I described, that need would still be met by > 'background-repeat:<angle>', but just a little less elegantly, as the > author could set the gradient angle to zero himself, and then enter > the angle he wants into background-rotate directly. Et voila, > gradients aligned to x/y axes, repeated, and then rotated. Do you > also deny that 'background-rotate' (or perhaps > 'background-transform', though I think that would be overkill) would > be good to have on general principles, even if not used with > gradients? I would like background-rotate to work with any background-image, not just gradients. Within the syntax for a possible background-rotate, it would be good to see the option for background-rotate-origin (working similar to transform-origin in 2D transforms). -- Alan Gresley http://css-3d.org/ http://css-class.com/
Received on Friday, 13 May 2011 23:44:25 UTC