- From: Alan Gresley <alan@css-class.com>
- Date: Thu, 14 Jul 2011 22:15:14 +1000
- To: robert@ocallahan.org
- CC: "Tab Atkins Jr." <jackalmage@gmail.com>, www-style list <www-style@w3.org>
On 14/07/2011 2:40 PM, Robert O'Callahan wrote:
> On Thu, Jul 14, 2011 at 1:13 PM, Tab Atkins Jr.<jackalmage@gmail.com>wrote:
>
>> Second, how should paint servers be referenced? In roc's old code,
>> you simply used url(), with the fragment pointing to the paint
>> server's id. More recently, though, roc has suggested using
>> element(), extending it to take a url. I'm not so much a fan of this
>> latter solution; for one, it's confusing to have both an idselector
>> and a url with a fragid, as they'll refer to different things -
>> element(#foo) refers to the element with id=foo in the host document,
>> while element("#foo") would refer to the element with id=foo in the
>> CSS document (which wouldn't refer to anything at all if the CSS was
>> external).
I don't follow Tab. A url string can be both (#foo) and ("#foo"). Are
you saying that the later can refer to an identifier in a CSS document
like #foo { ... }?
>> Also, would this then mean that you could reference
>> arbitrary elements from external pages (presumably same-origin
>> restricted)?
>>
>
> Yes, you can in Firefox at the moment.
>
> I've come full circle on this, in a way.
Can you clarify what you mean by coming full circle? Is this for or
against your recent suggestion regarding element() also taking a url?
> I now think that unifying CSS
> images and SVG paint servers completely would be great, in which case since
> url(foo.svg#pattern) is a valid SVG paint server, it should also be a valid
> CSS image with the equivalent meaning. I had concerns about compatibility
> with other possible uses of fragment references for SVG images, and fallback
> behavior for browsers not supporting the feature, but unifying CSS images
> and SVG paint servers seems a big enough win to just go ahead.
>
> I agree that for CSS images we can just have element(id) refer to the
> element with that id in the host document (or the anonymous element map). I
> think element(id) and url(#id) should behave the same whenever they refer to
> the same element.
>
> Rob
I don't quite follow Roc. What behavior is the same when an element(id)
and url(#id) are referring to the same element. To my understanding,
this can only happen in a xmlns:svg document like in your example on
your weblog [1].
As I follow (I have little knowledge of <canvas>), we can have this.
<style>
h1 { background-image: element(two); }
p { background-image: url(http://external.com/bucket.svg#bar); }
</style>
<h1 id="one">Heading</h1>
<p id="two">Paragraph</p>
Does this cross same-origin restrictions?
[1] http://weblogs.mozillazine.org/roc/archives/2008/07/svg_paint_serve.html
--
Alan Gresley
http://css-3d.org/
http://css-class.com/
Received on Thursday, 14 July 2011 12:15:45 UTC