Options:
- # Session Start: Tue May 22 00:00:00 2012
- # Session Ident: #css
- # [00:19] * sylvaing is now known as sylvaing_away
- # [00:51] <fantasai> heycam|away: if resolving the percentage would require doing layout, it must stay as a percentage
- # [00:51] <fantasai> heycam|away: (as a result, most percentages stay as percentages)
- # [00:54] * heycam|away is now known as heycam
- # [00:57] <heycam> fantasai, ok, otherwise is it preferred to convert it? most (all?) SVG properties aren't going to affect layout I guess.
- # [00:57] <fantasai> mmm, I'm not sure about that one :)
- # [00:57] <fantasai> what properties were you thinking of?
- # [00:58] <heycam> the first one I was looking at (as I'm reformatting all the property definition tables in the spec to have Computed Value lines) is stroke-width
- # [00:58] <heycam> oh but hang on -- percentages there refer to the viewport size, and perhaps that can be set by layout affecting how big the outer svg box is
- # [01:01] <heycam> that and stroke-dashoffset seem to be the only two properties we have that take percentages, surprisingly
- # [01:02] <heycam> (until we come to promoting a bunch of them)
- # [01:02] <heycam> s/them/attributes/
- # [01:23] <TabAtkins_> heycam: Layout can't currently affect the viewport size, no?
- # [01:23] <TabAtkins_> It's always set by the root element and nothing else.
- # [01:24] <heycam> TabAtkins_, I'm wondering about when you leave off the viewBox attribute
- # [01:24] <TabAtkins_> But <svg> nested inside of HTML can indeed depend on layout, if that's what you are referring to.
- # [01:24] <heycam> TabAtkins_, there's some magic that determines the viewport depending on the width/height
- # [01:24] <heycam> yeah
- # [01:25] <TabAtkins_> Excluding nesting in another language, I think that's well-defined before layout.
- # [01:25] <TabAtkins_> But since it can depend on the outer language doing layout, yeah, it should stay a used value.
- # [01:25] * sylvaing_away is now known as sylvaing
- # [01:26] <heycam> in general, do we want to compute percentages to absolute values, except in the cases where it requires layout?
- # [01:26] <TabAtkins_> Yes. Any value which *can* be resolved without layout, *should* be resolved at computed-value time.
- # [01:27] <TabAtkins_> That way you can depend fully on computed values being "correct" except when they depend on layout.
- # [01:27] <heycam> ok
- # [01:27] <heycam> and what about other kinds of values? any general rules?
- # [01:28] <TabAtkins_> And then specs refer solely to the computed or used values, as appropriate, except in very special circumstances when they need to refer to earlier value computation steps.
- # [01:29] <heycam> I noticed for example color does some things
- # [01:29] <TabAtkins_> The CSS value pipeline is cascaded->specified->computed->used->actual. Cascaded is the one that wins the cascade. Specified is same as cascaded, except with global keywords swapped out. Computed and used are as I said. Actual is used, but with values corrected for limitations of the display device (like rounding to integer pixels).
- # [01:30] <heycam> does color do the computed thing that it does because there are multiple ways to specify the same colour, and there's general desire to canonicalise the computed value?
- # [01:32] <TabAtkins_> Yes.
- # [01:33] <heycam> ok cool, these sound like rules I can apply, thanks (and to fantasai)
- # [01:33] * Quits: drublic (drublic@77.2.150.78) (Client exited)
- # [01:34] * Joins: drublic (drublic@77.2.150.78)
- # [01:34] <TabAtkins_> You want to canonicalize the computed value so that you can do comparisons correctly for e.g. Transitions or toggle().
- # [01:34] <TabAtkins_> Note, as always, that this doesn't necessarily have any bearing on the serialized value gotten from various APIs.
- # [01:34] <heycam> ok
- # [01:35] * Joins: myakura (myakura@122.130.129.42)
- # [01:37] * Quits: drublic (drublic@77.2.150.78) (Ping timeout)
- # [01:38] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [01:42] <TabAtkins_> fantasai: While writing the note about computed value comparison for toggle(), I was going to use box-shadow as an example, but I realized it actually has a badly-written computed value line.
- # [01:43] <TabAtkins_> It says "as specified", which means that "0px 0px blue" and "0px 0px 0px blue" would compute as different values.
- # [01:43] <fantasai> ah
- # [01:43] <TabAtkins_> Mind if I make an editorial tweak to the wording?
- # [01:44] <fantasai> yes, I want to know what you're tweaking it to :)
- # [01:44] <fantasai> and also Bert will need to incorporate it into the diffs
- # [01:44] <fantasai> so
- # [01:44] <fantasai> please post an issue
- # [01:44] <TabAtkins_> Okay. A www-style post sufficient?
- # [01:44] <fantasai> yep
- # [01:45] <TabAtkins_> k, one sec
- # [01:51] * Joins: jdaggett (jdaggett@202.221.217.73)
- # [02:14] * Quits: stearns (anonymous@192.150.22.5) (Quit: stearns)
- # [02:14] * Joins: stearns (anonymous@192.150.22.5)
- # [02:14] * fantasai waves to jdaggett
- # [02:15] <jdaggett> hiya
- # [02:15] <jdaggett> now reading about unquoted font family names over coffee
- # [02:15] <jdaggett> need stronger coffee...
- # [02:22] * fantasai is attempting to create order out of INBOX chaos today
- # [02:23] * jdaggett submits to chaos, for it is my lord and master...
- # [02:23] <dbaron> at least the sun isn't going away today while you're trying to drink your coffee
- # [02:25] <jdaggett> this is true. very bummed i couldn't find eclipse glasses when i went looking for them sunday night...
- # [02:25] <jdaggett> an eclipse seen via the tv just looks like another movie effect
- # [02:27] <jdaggett> although i did enjoy the clips of rather large americans eating bbq while viewing the eclipse that were shown on the news last night
- # [02:34] * Quits: dbaron (dbaron@206.15.76.122) (Quit: 8403864 bytes have been tenured, next gc will be global.)
- # [02:53] * Quits: tantek (tantek@206.15.76.122) (Quit: tantek)
- # [03:01] * Quits: arno (arno@192.150.10.201) (Quit: Leaving.)
- # [03:17] * Joins: jet (jet@67.169.43.128)
- # [03:28] * sylvaing is now known as sylvaing_away
- # [03:36] * Joins: myakura (myakura@122.130.129.42)
- # [03:39] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [03:43] * Quits: jet (jet@67.169.43.128) (Quit: jet)
- # [03:44] * Joins: jet (jet@67.169.43.128)
- # [03:44] * Quits: jet (jet@67.169.43.128) (Quit: jet)
- # [03:50] * Joins: jet (jet@67.169.43.128)
- # [04:05] * Quits: jet (jet@67.169.43.128) (Quit: jet)
- # [04:11] * Joins: nimbu (Adium@220.244.185.73)
- # [04:15] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [04:15] * Joins: nimbu (Adium@27.32.173.220)
- # [04:21] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [04:21] * Joins: nimbu (Adium@60.241.8.154)
- # [04:39] * heycam is now known as heycam|away
- # [04:39] * Quits: nimbu (Adium@60.241.8.154) (Quit: Leaving.)
- # [05:01] * Joins: jet (jet@67.169.43.128)
- # [05:05] * Quits: jet (jet@67.169.43.128) (Quit: jet)
- # [05:22] * heycam|away is now known as heycam
- # [05:33] * Joins: nimbu (Adium@60.241.8.154)
- # [05:36] * Joins: myakura (myakura@122.130.129.42)
- # [05:39] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [05:42] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [05:42] * Joins: nimbu (Adium@27.32.173.220)
- # [05:46] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [05:46] * Joins: nimbu (Adium@60.241.8.154)
- # [05:49] <heycam> what does the Applies To line mean exactly? is it that setting the property on the listed elements can have some sort of effect?
- # [05:49] <heycam> I'm looking at removing the duplicated property definitions from the SVG spec, like "display"
- # [05:50] <heycam> in CSS, it says that display applies to all elements, but in SVG setting say display:inline on certain elements will still not make them render anything
- # [05:50] <heycam> so it is accurate to say that display applies to all elements?
- # [05:56] <heycam> another question: is there an index to let me know what's the most recent spec that defines a given property (so I don't have to trawl through dev.w3.org/csswg/ looking for them)?
- # [05:57] * Quits: glenn (gadams@71.218.125.40) (Client exited)
- # [05:58] <Liam> heycam, might be a little late at night for some people here
- # [05:58] <heycam> Liam, fair point. I can wait. :)
- # [05:58] <Liam> I don't know of a regularly maintained index unfortunately, have been thinking about that too
- # [05:58] <heycam> ok
- # [05:59] <Liam> I think the implication is that the property is ignored (or just inherits from) elements to which it does not apply, we were looking at doing something similar for XSL-FO
- # [05:59] <Liam> getting rid of the duplicate defs, that is
- # [06:00] * Quits: nimbu (Adium@60.241.8.154) (Quit: Leaving.)
- # [06:00] <heycam> ok, so no rendering/behaviour effect
- # [06:36] * Joins: tantek (tantek@50.0.92.247)
- # [07:12] * Joins: macpherson (macpherson@74.125.56.17)
- # [07:36] * Joins: myakura (myakura@122.130.129.42)
- # [07:39] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [09:19] * Joins: Ms2ger (Ms2ger@91.181.125.136)
- # [09:35] * heycam is now known as heycam|away
- # [09:37] * Joins: myakura (myakura@122.130.129.42)
- # [09:40] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [09:42] * Joins: Ms2ger` (Ms2ger@91.181.125.136)
- # [09:42] * Quits: Ms2ger (Ms2ger@91.181.125.136) (Ping timeout)
- # [09:45] * Quits: Ms2ger` (Ms2ger@91.181.125.136) (Ping timeout)
- # [09:45] * Joins: Ms2ger` (Ms2ger@91.181.125.136)
- # [09:49] * Joins: drublic (drublic@77.2.137.227)
- # [09:52] * Quits: drublic (drublic@77.2.137.227) (Ping timeout)
- # [10:02] * Quits: Ms2ger` (Ms2ger@91.181.125.136) (Ping timeout)
- # [10:15] * Quits: jdaggett (jdaggett@202.221.217.73) (Quit: jdaggett)
- # [10:18] * Joins: drublic (drublic@93.132.242.243)
- # [10:19] * Joins: Ms2ger` (Ms2ger@91.181.125.136)
- # [10:57] * Joins: florianr (florianr@213.236.208.22)
- # [11:07] * Joins: SimonSapin (simon@82.232.219.95)
- # [11:28] * Quits: ed (ed@88.131.66.80) (Quit: ZNC - http://znc.sourceforge.net)
- # [11:37] * Joins: myakura (myakura@122.130.129.42)
- # [11:40] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [12:34] * Joins: ed (ed@88.131.66.80)
- # [13:38] * Joins: myakura (myakura@122.130.129.42)
- # [15:08] * Joins: lhnz (lhnz@188.223.83.48)
- # [15:56] * Joins: ksweeney (ksweeney@63.119.10.10)
- # [16:14] * Joins: nimbu (Adium@220.244.185.73)
- # [16:14] * Quits: nimbu (Adium@220.244.185.73) (Quit: Leaving.)
- # [16:32] * Parts: ksweeney (ksweeney@63.119.10.10)
- # [16:52] * Joins: arno (arno@192.150.10.201)
- # [17:08] * Quits: florianr (florianr@213.236.208.22) (Quit: Leaving.)
- # [17:11] * Joins: glenn (gadams@71.218.125.40)
- # [17:20] * Quits: dglazkov (u4270@88.198.6.68) (Client exited)
- # [17:33] * Quits: lhnz (lhnz@188.223.83.48) (Quit: Leaving)
- # [17:39] * Joins: dglazkov (u4270@88.198.6.68)
- # [17:41] <stearns> heycam: MDN has "Specifications" links from each property to what defines it
- # [17:42] <stearns> heycam: and http://dochub.io/#css/ is a good index to each property page
- # [17:43] * Joins: nimbu (Adium@60.241.8.154)
- # [17:52] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [17:52] * Joins: nimbu (Adium@220.244.185.73)
- # [17:56] * Joins: miketaylr (miketaylr@70.112.101.224)
- # [18:02] * Joins: ksweeney (ksweeney@63.119.10.10)
- # [18:03] * sylvaing_away is now known as sylvaing
- # [18:05] * Parts: ksweeney (ksweeney@63.119.10.10)
- # [18:12] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [18:12] * Joins: nimbu (Adium@60.241.8.154)
- # [18:39] * Quits: miketaylr (miketaylr@70.112.101.224) (Quit: dflk;adfslkj;alsiekfj;laiskdf)
- # [18:43] * Joins: jet (jet@206.15.76.122)
- # [18:45] * Quits: jet (jet@206.15.76.122) (Connection reset by peer)
- # [18:45] * Joins: jet (jet@206.15.76.122)
- # [18:45] * Quits: jet (jet@206.15.76.122) (Quit: jet)
- # [18:46] * Joins: jet (jet@206.15.76.122)
- # [18:52] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [18:52] * Joins: nimbu (Adium@220.244.185.73)
- # [19:10] * Quits: myakura (myakura@122.130.129.42) (Client exited)
- # [19:11] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [19:11] * Joins: nimbu (Adium@60.241.8.154)
- # [19:13] * Quits: arno (arno@192.150.10.201) (Quit: Leaving.)
- # [19:13] * Joins: arno (arno@192.150.10.201)
- # [19:13] * Quits: arno (arno@192.150.10.201) (Quit: Leaving.)
- # [19:14] * Joins: arno (arno@192.150.10.201)
- # [19:32] * Quits: drublic (drublic@93.132.242.243) (Client exited)
- # [19:32] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [19:32] * Joins: nimbu (Adium@220.244.185.73)
- # [19:32] * Joins: drublic (drublic@93.132.242.243)
- # [19:33] * Quits: SimonSapin (simon@82.232.219.95) (Ping timeout)
- # [19:36] * Quits: drublic (drublic@93.132.242.243) (Ping timeout)
- # [19:37] * Joins: dbaron (dbaron@206.15.76.122)
- # [19:42] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [19:42] * Joins: nimbu (Adium@27.32.173.220)
- # [19:52] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [19:52] * Joins: nimbu (Adium@60.241.8.154)
- # [19:59] * Joins: myakura (myakura@122.130.129.42)
- # [20:07] * Quits: jet (jet@206.15.76.122) (Quit: jet)
- # [20:09] * Joins: jet (jet@206.15.76.122)
- # [20:11] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [20:11] * Joins: nimbu (Adium@27.32.173.105)
- # [20:20] * Joins: nimbu1 (Adium@60.241.8.154)
- # [20:20] * Quits: nimbu (Adium@27.32.173.105) (Connection reset by peer)
- # [20:35] * Joins: miketaylr (miketaylr@70.112.101.224)
- # [20:36] * Quits: dbaron (dbaron@206.15.76.122) (Quit: 8403864 bytes have been tenured, next gc will be global.)
- # [20:36] * Joins: dbaron (dbaron@206.15.76.122)
- # [20:37] * sylvaing is now known as sylvaing_away
- # [20:47] * Quits: myakura (myakura@122.130.129.42) (Client exited)
- # [20:57] * Joins: danielfilho (danielfilh@187.31.77.7)
- # [21:01] * miketaylr is now known as miketaylrawaylol
- # [21:09] * miketaylrawaylol is now known as miketaylr
- # [21:23] * Quits: nimbu1 (Adium@60.241.8.154) (Ping timeout)
- # [21:23] * Joins: nimbu (Adium@220.244.185.73)
- # [21:34] * sylvaing_away is now known as sylvaing
- # [21:52] * Quits: danielfilho (danielfilh@187.31.77.7) (Quit: </html>)
- # [21:52] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [21:52] * Joins: nimbu (Adium@27.32.173.220)
- # [21:56] * Joins: drublic (drublic@77.2.137.227)
- # [22:02] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [22:02] * Joins: nimbu (Adium@220.244.185.73)
- # [22:11] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [22:12] * Joins: nimbu (Adium@27.32.173.220)
- # [22:19] <TabAtkins_> heycam|away: The Applies To line is informative only - it just gives a hint about the kinds of elements that the property has an effect on.
- # [22:21] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [22:21] * Joins: nimbu (Adium@220.244.185.73)
- # [22:23] * Quits: Liam (liam@128.30.52.169) (Ping timeout)
- # [22:33] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [22:33] * Joins: nimbu (Adium@27.32.173.220)
- # [22:38] <fantasai> TabAtkins_, heycam|away: The Applies-to line is normative. http://www.w3.org/TR/CSS21/about.html#applies-to
- # [22:38] <TabAtkins_> That section has no normative text. ^_^
- # [22:38] <fantasai> It defines which parts of the propdef tables are normative and informative
- # [22:38] <fantasai> and 1.4 is indeed normative
- # [22:40] <tantek> Perhaps it should read "MUST apply to:" :P
- # [22:41] <fantasai> it's also MUST NOT apply to things not listed there..
- # [22:41] <tantek> fantasai - I think historically we've treated such experimentation as within the realm of browser innovation
- # [22:41] <tantek> sometimes browsers will figure out how to make a feature apply to more types of elements
- # [22:42] <tantek> whereas the spec in question only requires that it apply to *some*
- # [22:42] <fantasai> while working on 2.1, we tighted up a lot of that
- # [22:42] <fantasai> and in areas where the UA was allowed to do more, we said so explicitly
- # [22:42] * Quits: nimbu (Adium@27.32.173.220) (Ping timeout)
- # [22:42] <fantasai> e.g. page-break
- # [22:42] <tantek> over time as more browsers expand beyond the required apply to, we can expand the spec accordingly
- # [22:42] * Joins: nimbu (Adium@60.241.8.154)
- # [22:42] <tantek> ok, so now a property must say explicitly whether a UA may do more?
- # [22:42] <fantasai> generally, if it doesn't make sense to apply the property to an element, it's not allowed
- # [22:42] <fantasai> yes
- # [22:43] <fantasai> otherwise, it's allowed
- # [22:43] <tantek> hmm
- # [22:43] <tantek> I'd rather err on the other side
- # [22:43] <fantasai> clip would be a lot more useful if your interpretation was the case ^_^
- # [22:43] <tantek> that is, expliclty require putting MUST NOT
- # [22:43] <tantek> rather than explicitly require putting in MAY
- # [22:44] <tantek> reasoning: adding MUST NOT actually adds a conformance requirement, whereas saying "MAY" does not
- # [22:44] <fantasai> ???
- # [22:44] <tantek> so if a property MAY apply beyond what the spec says, just don't say anything, that's the default
- # [22:44] <tantek> but if a property MUST NOT apply beyond what the spec says, than explicitly say so, on the apply to line.
- # [22:45] <tantek> clip was a syntax problem, not an applies to problem
- # [22:47] <fantasai> tantek: http://www.w3.org/TR/CSS21/visufx.html#clipping "Applies to: absolutely positioned elements"
- # [22:47] * Quits: kennyluck (kennyluck@114.43.114.125) (Ping timeout)
- # [22:47] <fantasai> and yes, the syntax is awful too, but that's not really want makes it so useless
- # [22:48] * Joins: myakura (myakura@122.130.129.42)
- # [22:48] * Joins: Liam (liam@128.30.52.169)
- # [22:51] * Quits: myakura (myakura@122.130.129.42) (Ping timeout)
- # [22:51] <tantek> when we last discussed 'clip' seriously IIRC it was at a f2f at Microsoft SVC - and there's an infamous line about Chris Lilley running screaming from the room (I think it got minuted)
- # [22:51] <tantek> and scope wasn't the issue blocking us
- # [22:51] <tantek> it was both syntax
- # [22:51] <tantek> and interpretation of whether bottom and right values were relative to top/left or bottom/right
- # [22:52] * Quits: nimbu (Adium@60.241.8.154) (Ping timeout)
- # [22:52] * Joins: nimbu (Adium@27.32.173.105)
- # [22:52] <tantek> anyway - you're arguing a counterfactual which isn't particularly useful
- # [22:52] <tantek> on the contrary here is a positive example
- # [22:52] <tantek> applies to scope-expansion is how we got white-space to apply to inline elements
- # [22:52] <tantek> CSS1 said it applied to only to "block level" elements
- # [22:53] <tantek> someone slipped in a test case in the CSS1 test suite that tested it on an inline element
- # [22:53] <tantek> browsers seemingly were able to interoperably implement it
- # [22:53] <tantek> we expanded the spec accordingly
- # [22:53] <tantek> (despite Bert saying it was never his intent that white-space could apply to inline elements)
- # [23:00] * Joins: nimbu1 (Adium@60.241.8.154)
- # [23:00] * Quits: nimbu (Adium@27.32.173.105) (Connection reset by peer)
- # [23:00] * Joins: kennyluck (kennyluck@114.25.240.46)
- # [23:12] * Quits: nimbu1 (Adium@60.241.8.154) (Ping timeout)
- # [23:12] * Joins: nimbu (Adium@220.244.185.73)
- # [23:22] * Quits: nimbu (Adium@220.244.185.73) (Ping timeout)
- # [23:22] * Joins: nimbu (Adium@27.32.173.105)
- # [23:26] * Quits: Ms2ger` (Ms2ger@91.181.125.136) (Quit: nn)
- # [23:30] * Joins: nimbu1 (Adium@60.241.8.154)
- # [23:30] * Quits: nimbu (Adium@27.32.173.105) (Connection reset by peer)
- # [23:41] * Quits: nimbu1 (Adium@60.241.8.154) (Ping timeout)
- # [23:41] * Joins: nimbu (Adium@27.32.173.105)
- # [23:51] * Joins: nimbu1 (Adium@220.244.185.73)
- # [23:51] * Quits: nimbu (Adium@27.32.173.105) (Connection reset by peer)
- # Session Close: Wed May 23 00:00:00 2012
The end :)