- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Mon, 14 Nov 2011 16:25:53 -0800
- To: Håkon Wium Lie <howcome@opera.com>
- Cc: www-style list <www-style@w3.org>
On Mon, Nov 14, 2011 at 4:16 PM, Håkon Wium Lie <howcome@opera.com> wrote: > Tab wrote: > > > In the definitions for 'bookmark-label' and 'bookmark-target', the > > property definition line explicitly talks about the attr() function. > > There's no need to do so - attr() resolves to a particular type based > > on its type argument. > > Right, we no longer need to do what CSS 2.1 does -- e.g., here: > > http://www.w3.org/TR/CSS2/generate.html#propdef-content > > A relief. Oof, yeah. We should be able to just drop <counter> and <attr> from that line when we pull that into a level 3 module. > > So bookmark-label, for example, only needs to > > say that it accepts <string>, and then any use of "attr(foo as > > string)" or "attr(foo)" will be valid, but "attr(foo as color)" won't > > be. A similar consideration applies for bookmark-target and the <url> > > type. > > I can see that the cue-based approach to functional arguments make > some sense; replacing "," with " as " could possible make things more > readable. Taking the type out of the parethesis may be even better: > > bookmark-label: attr(title) as string > > I'm not sure it scales, though. Consider this example, which people > have been writing for some years: > > a::after { content: "(see page " target-counter(attr(href, url), page, decimal) ")" } > > which could become: > > a::after { content: "(see page " target-counter(attr(href as url) of page as decimal) ")" } > > or perhaps: > > a::after { content: "(see page " target-counter(attr(href) as url, of (page) as decimal) ")" } > > It suddenly doesn't look as good anymore. Hmm. I don't think we should pull arguments out of the function entirely. I'm not sure it's intuitive (it looks like a generic modifier that can be added to other things), and there's always a chance of ambiguity in complex grammars. However, the second form ("attr(href as url)") looks just fine to me. ~TJ
Received on Tuesday, 15 November 2011 00:26:42 UTC