IRC log of css on 2012-08-13
Timestamps are in UTC.
- 00:20:50 [dbaron]
- dbaron has joined #css
- 00:45:19 [leaverou]
- leaverou has joined #css
- 01:25:50 [krit]
- krit has joined #css
- 02:28:53 [leaverou]
- leaverou has joined #css
- 03:08:30 [leaverou]
- leaverou has joined #css
- 03:09:21 [leaverou_]
- leaverou_ has joined #css
- 03:12:47 [krit]
- krit has joined #css
- 04:05:58 [krit]
- krit has joined #css
- 15:47:10 [RRSAgent]
- RRSAgent has joined #css
- 15:47:10 [RRSAgent]
- logging to http://www.w3.org/2012/08/13-css-irc
- 15:47:16 [Zakim]
- Zakim has joined #css
- 15:47:27 [glazou]
- RRSAgent, make logs public
- 15:47:34 [glazou]
- RRSAgent, span over midnight
- 15:47:34 [RRSAgent]
- I'm logging. I don't understand 'span over midnight', glazou. Try /msg RRSAgent help
- 15:49:14 [glazou]
- rrsagent, this meeting spans midnight
- 16:01:52 [TabAtkins_]
- TabAtkins_ has joined #css
- 16:12:45 [arronei_]
- arronei_ has joined #css
- 16:15:43 [florian]
- florian has joined #css
- 16:16:49 [TabAtkins_]
- ScribeNick: TabAtkins_
- 16:16:52 [Rossen]
- Rossen has joined #css
- 16:17:44 [dbaron]
- Present: Peter Linss, fantasai, Leif Arne Storset, Florian Rivoal, David Baron, Tab Atkins, Tantek Çelik, Ted O'Connor, Alan Stearns, Rossen Atanassov, Glenn Adams, John Daggett, Vincent Hardy, Steve Zilles, Bert Bos, Sylvain Galineau, Daniel Glazman
- 16:17:48 [jdaggett]
- jdaggett has joined #css
- 16:17:58 [TabAtkins_]
- [sorting through agenda items]
- 16:17:59 [vhardy_]
- vhardy_ has joined #css
- 16:18:58 [tantek]
- tantek has joined #css
- 16:20:03 [vhardy_]
- vhardy_ has joined #css
- 16:24:34 [hober]
- krit: yes, once we finish making it
- 16:24:44 [krit]
- hober: great, thanks!
- 16:25:12 [krit]
- hober: W3C STYLE conference room for dialing in?
- 16:27:05 [hober]
- krit: i assume so
- 16:29:38 [dbaron]
- do we have a phone in this room?
- 16:33:41 [krit]
- does someone have a cell phone if not? :P
- 16:34:23 [SteveZ]
- SteveZ has joined #css
- 16:34:28 [fantasai]
- ScribeNick: fantasai
- 16:34:31 [fantasai]
- Topic: @supports
- 16:34:37 [fantasai]
- dbaron: We've published one WD to /TR
- 16:34:41 [fantasai]
- dbaron: There's been some minor tweaks
- 16:34:48 [fantasai]
- dbaron: and the addition of a bunch of OM stuff to spec
- 16:34:49 [dbaron]
- http://dev.w3.org/csswg/css3-conditional/
- 16:35:08 [fantasai]
- dbaron: Want to discuss mainly OM stuff today
- 16:35:29 [fantasai]
- dbaron: One piece is relatively straightforward, 8.1 is numbers, we used 12 and 13
- 16:35:35 [fantasai]
- dbaron: 8.2 is relatively straightforward
- 16:35:54 [fantasai]
- dbaron: in that we already have an interface for MediaRule that has all but the first attribute here
- 16:36:03 [fantasai]
- dbaron: instead of conditionText it has mediaText
- 16:36:11 [fantasai]
- dbaron: 1. Is conditionText right
- 16:36:24 [fantasai]
- dbaron: 2. Do we want a parent interface on which the bottom three are shared
- 16:36:58 [fantasai]
- glazou: We ask browser if it supports a property and a value
- 16:37:12 [fantasai]
- Tab: No, it's more than that -- it's conjunctions with and/or/not, not just a sigle property declarations
- 16:37:23 [fantasai]
- Tab: You could make a tree structure for it, but I don't know how valuable that is
- 16:37:30 [fantasai]
- dbaron: Doubles implementation work of @supports
- 16:37:41 [fantasai]
- Florian: Let's not do that until someone asks for it
- 16:37:53 [fantasai]
- dbaron: I named it conditionText to match a bunch of other things that end in Text in the OM
- 16:38:49 [fantasai]
- fantasai: Question, it's medaiText for MediaRule, why is it conditionText for SupportsRule?
- 16:39:08 [fantasai]
- Tab: you're thinking it should be supportsText?
- 16:39:43 [fantasai]
- Tantek: Seems confusing, asking if it "supports Text"
- 16:40:23 [fantasai]
- fantasai: But all these things are condition rules, why is only this one called conditionText
- 16:40:49 [fantasai]
- Florian: Would be nice if all three rules used conditionText
- 16:41:07 [fantasai]
- dbaron: I think mediaText is in the other chapter of DOM 2 Style...
- 16:41:43 [fantasai]
- Florian: So .media.mediaText could be equivalent to .conditionText
- 16:41:52 [fantasai]
- Florian: And have all of them have .conditionText
- 16:42:17 [dbaron]
- Daniel: So for @media, .media.mediaText and .conditionText would be equivalent?
- 16:42:25 [fantasai]
- dbaron: yes
- 16:42:37 [fantasai]
- glazou: for both getting and setting?
- 16:42:39 [fantasai]
- dbaron: yes
- 16:43:05 [fantasai]
- glazou: Wrt additional interface, would that get implemented?
- 16:43:13 [fantasai]
- (additional common interface)
- 16:43:34 [fantasai]
- dbaron: My inclination would be to put it in the spec and mark it at risk
- 16:43:52 [dbaron]
- (agreement)
- 16:44:31 [fantasai]
- Florian: Back on conditionText itself, need to define how serialization works
- 16:44:43 [fantasai]
- Florian: In your stylesheet, if you have not not not, do you collapse into one not?
- 16:44:51 [fantasai]
- Tab: Are you allowed to do logical simplifications
- 16:44:55 [fantasai]
- Florian: I'd like to simplify
- 16:44:59 [fantasai]
- Tab: I'm ok with that
- 16:45:31 [fantasai]
- Florian: also multiple nested parens that don't do anything, can you collapse that
- 16:45:43 [fantasai]
- dbaron: Don't want to require that ...
- 16:45:50 [fantasai]
- Florian: Want to have identical serializations across browsers
- 16:46:05 [fantasai]
- dbaron: We wanted to use a token string
- 16:46:17 [fantasai]
- Florian: We copy the string exactly from the style sheet
- 16:46:26 [fantasai]
- Florian: ... we simplify
- 16:46:34 [fantasai]
- dbaron: I don't think there's a need to simplify
- 16:46:39 [fantasai]
- dbaron: It's extra code on our end to simplify
- 16:46:49 [fantasai]
- Florian: In my case what I wrote was the easiest implementation
- 16:47:26 [fantasai]
- Glenn: Need to define this if you want to test it
- 16:47:44 [fantasai]
- fantasai: Authors will want to predict what they get back, and get consistent result,s if they want to tweak it and write it back
- 16:48:18 [fantasai]
- Florian talks about preserving invalid conditions
- 16:48:23 [dbaron]
- Present: Peter Linss, fantasai, Leif Arne Storset, Florian Rivoal, David Baron, Tab Atkins, Tantek Çelik, Ted O'Connor, Alan Stearns, Rossen Atanassov, Glenn Adams, John Daggett, Vincent Hardy, Steve Zilles, Koji Ishii, Bert Bos, Sylvain Galineau, Daniel Glazman
- 16:48:25 [fantasai]
- Glenn: What about white space and comments?
- 16:49:03 [fantasai]
- fantasai points to the current spec, which has a proposal
- 16:49:25 [fantasai]
- dbaron: I think in order to preserve semantics, you need to preserve where comments are, if not what's in them
- 16:49:36 [fantasai]
- Florian: Seems easier to just pass through the string
- 16:50:09 [fantasai]
- glazou: So you empty the comments, and report back an empty comment?
- 16:50:18 [fantasai]
- Florian: No, if we do this, we'd preserve the comment
- 16:50:53 [fantasai]
- dbaron: Sounds like we both implemented at a layer above the tokenizer, went back to stylesheet and pulled out the text
- 16:51:05 [fantasai]
- glazou: Still match curly braces etc?
- 16:51:26 [fantasai]
- dbaron: As we parsed, yes. We mark the start and end in the style sheet data, and pull that directly back out
- 16:52:04 [fantasai]
- glazou writes on the board:
- 16:52:20 [fantasai]
- @supports (foo: {;};);
- 16:52:57 [fantasai]
- dbaron: That's syntactically because of the second semicolon... and the third semicolon
- 16:53:03 [fantasai]
- glazou errases that and writes
- 16:53:13 [fantasai]
- @supports (foo: {;} blah)
- 16:53:18 [fantasai]
- glazou: Catch everything correctly?
- 16:53:20 [fantasai]
- dbaron: yeah
- 16:53:29 [fantasai]
- Florian writes
- 16:53:39 [fantasai]
- @supports (foo: {;} blah) and (bar:baz)
- 16:53:55 [fantasai]
- Florian: We preserve the contents of the parens, but we parse and normalize the structure around it
- 16:54:21 [fantasai]
- Florian adds more parens and double nots, points out that they get simplified out
- 16:54:36 [fantasai]
- dbaron: We don't preserve any structure
- 16:55:38 [fantasai]
- Florian discusses .condition, which would have a tree structure, and whether that should be simplified
- 16:55:45 [fantasai]
- plinss thinks it's better not to simplify
- 16:56:10 [fantasai]
- plinss: Reason not to simplify is that I'll want to mainpulate via script, plug things into levels, don't want those levels to disappear on me
- 16:56:25 [fantasai]
- glazou: I think I prefer dbaron's approach
- 16:56:56 [fantasai]
- glazou: Being able to read back the condition exactly as the author wrote it is good
- 16:57:11 [fantasai]
- Glenn: what about the case when you construct via script?
- 16:57:19 [fantasai]
- dbaron: It's the same
- 16:58:08 [fantasai]
- dbaron: I want to allow outputting a token stream rather than the text from the style sheet, so the implementation could replace \S+ with a space
- 16:58:17 [fantasai]
- dbaron: And would be allowed to drop contents of a comment, could do so
- 16:58:24 [fantasai]
- dbaron: They can't drop the comment
- 16:58:40 [fantasai]
- glazou: I would prefer if you don't do that
- 16:58:58 [fantasai]
- Tab: Would prefer to do that, because otherwise you have to go back to the source text
- 16:59:13 [fantasai]
- Tab: Once you have a parse tree, theoretically you should be able to kill the source text
- 16:59:36 [fantasai]
- Tab: The exact source text doesn't exist in the parse tree, because the parse tree is made of tokens
- 17:00:59 [fantasai]
- Tab: Implementations that don't preserve the source text should be able to implement this
- 17:01:45 [fantasai]
- dbaron: While what I'm proposing isn't 100% precisely defined, it's better than almost everything else in the CSSOM
- 17:01:45 [TabAtkins_]
- TabAtkins_ has joined #css
- 17:01:54 [ChrisL]
- ChrisL has joined #css
- 17:02:26 [glazou]
- glazou: I want to read the proposal before accepting it
- 17:03:23 [fantasai]
- RESOLVED: Have intermediary condition rule interface
- 17:03:28 [fantasai]
- (name TBD)
- 17:03:51 [fantasai]
- Discussion of grouping rules (contain declarations) vs. others?
- 17:04:04 [fantasai]
- Tab: Need to look at @keyframes
- 17:04:14 [fantasai]
- plinss: @page
- 17:04:51 [dbaron]
- RESOLVED: .conditionText goes on that common interface
- 17:04:55 [fantasai]
- RESOLVED: conditionText on the common interface, for @media is equivalent to .media.mediaText
- 17:05:21 [fantasai]
- glazou: If it's conditionText, should be ConditionRule
- 17:05:27 [fantasai]
- glazou: to be consistent
- 17:05:51 [fantasai]
- RESOLVED: CSSConditionRule
- 17:05:52 [dbaron]
- (Tab suggests we have GroupRule and ConditionRule.)
- 17:06:30 [fantasai]
- RESOLVED: conditionText returns either the token stream or source text from the style rule, with no logical simplifications, just tokenization ones
- 17:06:47 [dbaron]
- (i.e., could optionally collapse whitespace or drop contents of comments)
- 17:07:21 [fantasai]
- jdaggett: What should we be doing for new @rules, are we defining a specific serialization?
- 17:07:25 [fantasai]
- Florian: This one is pretty specific
- 17:07:36 [fantasai]
- glazou: I suggest we take that question to the OM discussion
- 17:08:25 [fantasai]
- glazou: DocumentRule?
- 17:08:38 [fantasai]
- Florian: have to decide normalization of conditionRule for URLs
- 17:08:54 [fantasai]
- dbaron: normalization of urls is hard, might require us to drop @document from the spec atm
- 17:09:13 [fantasai]
- dbaron: 9.3 is OM interface to do @supports queries
- 17:09:35 [fantasai]
- dbaron: I feel strongl that this should not allow logical combinations, because JS can do that
- 17:10:17 [fantasai]
- glazou: We had the exact discussion with matchMedia, and came to the exact opposite conclusion
- 17:10:50 [fantasai]
- glazou: supportsCSS is good as it is, maybe we need another interface too
- 17:11:03 [fantasai]
- Tab: We did the entire media query for matchMedia so that you could attach a listener
- 17:11:17 [fantasai]
- glazou: I agree, but from an author's perspective
- 17:12:12 [fantasai]
- ...
- 17:12:25 [fantasai]
- sylvaing: People will want to pull from conditionText and put it into the matching function.
- 17:12:41 [fantasai]
- Tab: you can't interchange media queries and support queries
- 17:12:51 [fantasai]
- Tab: There are some that look identical
- 17:13:33 [fantasai]
- fantasai: So, the comment I have here is that supportsCSS seems very general, but this only takes a property-value pair
- 17:13:43 [fantasai]
- Tab wants the name to be short
- 17:14:06 [fantasai]
- sylvaing: Is there any objection to the functionality here?
- 17:14:17 [fantasai]
- glenn: Do you want to query a property with any value?
- 17:14:23 [fantasai]
- Tab: We are specifically *not* doing that.
- 17:15:02 [fantasai]
- glenn: I'm ok with the functionality, concerned about where it is atteched (window object)
- 17:15:35 [fantasai]
- glenn: Could attach to navigator
- 17:15:38 [fantasai]
- CSSStyleSheet
- 17:15:42 [fantasai]
- CSSDeclaration
- 17:15:51 [fantasai]
- Tab: I propose creating a new CSS object and attaching it to that
- 17:16:08 [fantasai]
- Tab: Right now the constructors for everything else have enormous names, e.g. CSSPixelValue
- 17:16:17 [fantasai]
- Tab: would be nice to be able to say CSS.px()
- 17:16:34 [fantasai]
- Florian: 3 acceptable proposals to me: window, navigator, or what Tab is saying
- 17:16:46 [fantasai]
- fantasai agrees with Florian
- 17:17:47 [fantasai]
- Glenn: Keep in mind that properties on window are shadowable
- 17:18:08 [fantasai]
- dbaron: That was true in ECMA262 Edition 5, which was regresion from Edition 3, and was fixed in 5.1
- 17:19:26 [fantasai]
- fantasai: [...]
- 17:19:39 [fantasai]
- dbaron: want to avoid supportsProperty because ECMA uses properties
- 17:20:06 [fantasai]
- dbaron: Could be ok with supportsCSSValue
- 17:20:13 [fantasai]
- Florian: CSS.supportsValue
- 17:20:17 [fantasai]
- Florian: Still reasonably short
- 17:20:37 [fantasai]
- fantasai^: Would expect CSS.supports() to be the function that takes the whole @supports condition string
- 17:20:38 [stearns]
- +1 to supportsValue
- 17:21:57 [fantasai]
- some meta-discussion
- 17:22:28 [fantasai]
- Florian points out it is being implemented now
- 17:23:07 [fantasai]
- jdaggett is not buying this argument, we get a lot of this situation of implementing things in editor's drafts
- 17:24:16 [fantasai]
- fantasai proposes compiling list of proposals, posting to www-style, discussing over breaks, and revisiting later
- 17:24:39 [fantasai]
- Bert: Does window always exist?
- 17:24:50 [fantasai]
- Tab: A global object exists, and for compat reasons it's called window
- 17:25:35 [fantasai]
- 0. window.supportsCSS()
- 17:25:40 [fantasai]
- 1. CSS.supportsValue()
- 17:25:52 [TabAtkins_]
- 2. CSS.supports()
- 17:26:02 [hober]
- CSS.supportsPropertyValue()
- 17:26:08 [fantasai]
- no!
- 17:26:19 [fantasai]
- ACTION glazou: email www-style
- 17:26:19 [trackbot]
- Created ACTION-489 - Email www-style [on Daniel Glazman - due 2012-08-20].
- 17:27:11 [fantasai]
- Florian: Issue -- you strip WS at the ends, do you also strip comments?
- 17:27:37 [fantasai]
- dbaron: You trim the property name, because it has to be a property name
- 17:28:01 [fantasai]
- Florian: So, around value, whatever, around property, nothing. Ok
- 17:28:49 [fantasai]
- dbaron: Expects property to be a property, and value to be anything that's allowed in the value, including white space and comments
- 17:29:02 [fantasai]
- Bert: Is the property normalized?
- 17:29:09 [fantasai]
- fantasai: What about escapes
- 17:29:26 [fantasai]
- dbaron: You're not parsing CSS, just taking a property name
- 17:29:39 [fantasai]
- Bert: Unicode normalization?
- 17:30:08 [fantasai]
- Tab: Not an issue, our properties are all ASCII
- 17:30:15 [fantasai]
- sylvaing: What if you pass in a variable name?
- 17:30:39 [fantasai]
- RESOLVED: property name must be the name, no escapes, no spaces, it's not parsed it's just a name. value can be anything taken as a value
- 17:30:49 [fantasai]
- glazou asks about tests
- 17:30:59 [fantasai]
- Opera has submitted theirs, Mozilla needs to submit theirs
- 17:31:11 [fantasai]
- O(100) tests
- 17:31:45 [dbaron]
- that's the same as O(1)
- 17:50:19 [Koji]
- Koji has joined #css
- 17:51:20 [stearns]
- my word-count/test ratio heuristic says that css3-conditional will need 334 tests
- 17:52:17 [vhardy_]
- vhardy_ has joined #css
- 17:52:28 [vhardy__]
- vhardy__ has joined #css
- 17:53:55 [smfr]
- smfr has joined #css
- 17:56:59 [fantasai]
- Tab: So, fantasai Florian and I have a suggestion
- 17:57:18 [fantasai]
- Tab: We like CSS.supports(), but it implies very generic, so have that take the conditionText of a supports rule
- 17:57:56 [fantasai]
- Tab: Don't like how matchMedia requires parens around a single thing, so I like 2-argument form for readability for simple tests
- 17:58:25 [fantasai]
- fantasai: For two-value, was it CSS.supportsValue()?
- 17:58:51 [fantasai]
- Florian: No, CSS.supports() with two arguments it works as currently defined
- 17:58:59 [dbaron]
- Tab: So I'm suggesting CSS.supports() 1-argument form taking an @supports condition and a 2-argument form taking property and value
- 17:59:16 [fantasai]
- dbaron: I'm worried that creating this CSS object might be more controversial
- 17:59:21 [fantasai]
- dbaron: But I'm ok with giving it a try
- 17:59:37 [fantasai]
- hober: Concerned about compat with random websites that use CSS as a global
- 17:59:49 [dbaron]
- Tab: If CSS doesn't work, ok with reverting to window.suppportCSS
- 17:59:49 [fantasai]
- Glenn prefers CSSStyleRule.supports
- 18:00:18 [fantasai]
- Tab: We wouldn't look at that until testing support for @rules anyway
- 18:00:26 [fantasai]
- szilles: It isn't CSS supports, its UA supports
- 18:02:00 [fantasai]
- RESOLVED: CSS.supports() with one (conditionText-compatible) or two (property, value) arguments. Fall back to window.supportsCSS if not possible.
- 18:02:08 [fantasai]
- ACTION TabAtkins: ask WebApps about global CSS object
- 18:02:08 [trackbot]
- Sorry, couldn't find user - TabAtkins
- 18:02:09 [dbaron]
- dbaron: Don't have an extra feedback request to www-style right now (reduce bikeshedding); we'll get feedback on the minutes and on the draft.
- 18:02:48 [dbaron]
- ScribeNick: dbaron
- 18:02:51 [dbaron]
- Topic: Selectors4
- 18:03:58 [glazou]
- -di-cold-glazou
- 18:04:32 [fantasai]
- http://dev.w3.org/csswg/selectors4/
- 18:04:53 [dbaron]
- fantasai: some changes since we last discussed this
- 18:05:01 [dbaron]
- fantasai: scoped selectors (3.3): we defined 2 ways of scoping selectors
- 18:05:15 [dbaron]
- fantasai: these are the 2 ways available in HTML and the OM. We gave them names so those specs can refer here.
- 18:05:21 [dbaron]
- fantasai: Updated prose for :scope pseudo-class.
- 18:05:42 [dbaron]
- Tab: If someone can come up with better names than contained and constrained, that would be appreciated. Not different enough.
- 18:06:15 [dbaron]
- glazou: querySelector on an element?
- 18:06:23 [dbaron]
- fantasai: yeah, example 2 should refer to Element.querySelector()
- 18:06:41 [dbaron]
- fantasai: Other change to discuss is 8.4: :valid-drop-target
- 18:07:13 [dbaron]
- fantasai: We resolved to add this.
- 18:07:36 [dbaron]
- fantasai: But Sylvain pointed out that we should be limiting it to the one that you'd drop it on right now
- 18:07:47 [dbaron]
- glazou: :valid-drop-target:active ?
- 18:07:57 [dbaron]
- fantasai: It's not being activated right now.
- 18:08:12 [dbaron]
- glazou: Like when you click and haven't released the button yet
- 18:08:26 [dbaron]
- fantasai: I think it would be more confusing.
- 18:08:37 [dbaron]
- fantasai: I looked over other suggestions in the minutes, other suggestions were :active-drop-target
- 18:08:51 [dbaron]
- fantasai: We switched in order to distinguish between valid and invalid drop targets.
- 18:09:03 [dbaron]
- fantasai: But that seems a bit abstract. I think Sylvain's issue is more important.
- 18:09:27 [dbaron]
- fantasai: We could have three pseudo-classes (maybe not now, but in the future): we could have :valid-drop-target and :invalid-drop-target that indicate possible drop targets.
- 18:10:33 [dbaron]
- [discussion about invalid vs. not drop target]
- 18:10:55 [dbaron]
- fantasai: proposal is to rename to :active-drop-target, and if we want to distinguish :valid and :invalid later we can add them
- 18:11:28 [dbaron]
- glazou: Behavior you describe is not in conformance to mouse clicks
- 18:11:46 [dbaron]
- glazou: I think :valid-drop-target:active is better
- 18:11:50 [dbaron]
- glazou: Need :dropped
- 18:12:12 [dbaron]
- fantasai: Original request is what will recieve the drop if I let it go
- 18:12:24 [dbaron]
- fantasai: I don't want to have to combine pseudos for this
- 18:13:05 [dbaron]
- Tantek: other name suggestions from cursor:no-drop
- 18:13:19 [cabanier]
- cabanier has joined #css
- 18:13:48 [dbaron]
- fantasai: If we went with that, :active-drop, :drop, :no-drop
- 18:14:32 [arronei_]
- how about :drop-target and :no-drop-target
- 18:14:33 [dbaron]
- fantasai: :active-drop would be the thing about to receive the drop if dropped now, :drop is any valid drop target, and :no-drop is a drop target that's not valid
- 18:14:49 [dbaron]
- Tab: [speaking at >150wpm]
- 18:14:59 [fantasai]
- arronei, I like :active-drop and :drop, they're nice and short
- 18:15:08 [fantasai]
- arronei, the -target part doesn't seem necessary
- 18:15:14 [dbaron]
- Tab: The :invalid pseudo-classe doesn't apply to all the dom, only things with validity constraints.
- 18:15:57 [arronei_]
- just saying :drop isn't explicit enough in my opinion
- 18:16:31 [arronei_]
- does it mean I can drop something or I am dropping something?
- 18:17:00 [dbaron]
- Bert: difference between :active-drop and :drop:hover ?
- 18:17:14 [dbaron]
- fantasai: might not need to actually be inside the boundary
- 18:17:16 [dbaron]
- q+
- 18:17:38 [dbaron]
- fantasai: Solitaire on windows actually has two options for this behavior: can go to the closest one
- 18:17:49 [dbaron]
- Bert: at least cover a part of it?
- 18:17:52 [dbaron]
- fantasai: not in all interfaces
- 18:18:11 [dbaron]
- Florian: [asked Q]
- 18:18:38 [dbaron]
- Florian: difference between :drop:hover and :active:drop -- in theory? in practice?
- 18:18:40 [tantek]
- q+
- 18:18:49 [dbaron]
- fantasai: [really fast]
- 18:19:16 [dbaron]
- ack dbaron
- 18:19:16 [fantasai]
- dbaron: You might not be triggering :hover at all with drag and drop
- 18:19:25 [dbaron]
- ack tantek
- 18:19:30 [fantasai]
- fantasai explaining that interfaces might trigger drops even if not hovering
- 18:19:35 [fantasai]
- e.g. solitaire on windows
- 18:19:37 [dbaron]
- Tantek: I think this use of :active is a different semantic from :active elsewher
- 18:19:58 [dbaron]
- Tantek: bad from teaching perspective. Closer to :hover than :active.
- 18:20:07 [dbaron]
- Florian: :current-drop ?
- 18:20:18 [dbaron]
- Tantek: with some drag&drop interfaces, button might not be down
- 18:20:35 [dbaron]
- Tab: I like :can-drop
- 18:20:41 [dbaron]
- Florian: That's :drop, not :active-drop
- 18:20:59 [dbaron]
- fantasai: :will-drop, :can-drop, :no-drop
- 18:21:11 [dbaron]
- fantasai: :current-drop, :can-drop, :no-drop
- 18:22:00 [dbaron]
- Tantek: :can-drop, :drop, :no-drop
- 18:22:29 [Koji]
- Koji has joined #css
- 18:22:37 [dbaron]
- (these are in order of replacing :active-drop-target, :valid-drop-target, :invalid-drop-target)
- 18:22:55 [dbaron]
- fantasai: :drop, :can-drop, :no-drop
- 18:23:11 [dbaron]
- Florian: :current-drop, :valid-drop, :invalid-drop
- 18:23:37 [dbaron]
- Florian: I don't like :no-drop because it sounds like it includes things that aren't drop targets.
- 18:24:06 [dbaron]
- Peter: but value in being consistent with cursor
- 18:24:18 [dbaron]
- ?: no-drop cursor could be used where not a drop target
- 18:24:22 [dbaron]
- Tantek: That's not how it's used in UIs.
- 18:24:30 [dbaron]
- glazou: I'm not seeing this discussion going anywhere.
- 18:24:48 [dbaron]
- fantasai: I like these 2, these 2 ok, really don't like these 2.
- 18:25:22 [dbaron]
- now down to:
- 18:25:29 [dbaron]
- :active-drop, :drop, :no-drop
- 18:25:34 [dbaron]
- :drop, :can-drop, :no-drop
- 18:25:44 [dbaron]
- :current-drop, :valid-drop, :invalid-drop
- 18:26:05 [dbaron]
- Steve: I don't like :drop
- 18:26:27 [dbaron]
- ACTION fantasai to email www-style about the possiblities
- 18:26:27 [trackbot]
- Created ACTION-490 - Email www-style about the possiblities [on Elika Etemad - due 2012-08-20].
- 18:26:37 [dbaron]
- Florian: I suggest putting all 3 in the spec
- 18:27:00 [florian]
- and put the later two at risk
- 18:27:02 [dbaron]
- fantasai: Next thing for discussion is :user-error (11.5)
- 18:27:08 [drublic]
- drublic has joined #css
- 18:27:29 [dbaron]
- fantasai: We had proposal for :-moz-ui-invalid, :invalid limited to when user has already interacted with it.
- 18:27:41 [dbaron]
- fantasai: Mozilla has some heuristics for when :-moz-ui-invalid is triggered
- 18:27:54 [dbaron]
- fantasai: But the ideas it do it when you actually want to highlight things as invalid.
- 18:28:31 [dbaron]
- fantasai: Tab and I came up with the name :user-error, a control that is required but not yet filled in, but has invalid input
- 18:28:55 [dbaron]
- glazou: In case of elements implemented by UA, I understand. What about elements implemented by the Web author?
- 18:29:11 [dbaron]
- Tab: setCustomValidity can do that
- 18:29:33 [TabAtkins_]
- dbaron: The problem we're dealign with here is that some elements are invalid when they haven't yet received input.
- 18:29:49 [TabAtkins_]
- dbaron: If someone is doing a custom control, they need to call setCustomValidity in that state where they haven't yet received input.
- 18:29:59 [TabAtkins_]
- dbaron: ...so the form cant' be submitted in that state.
- 18:30:10 [TabAtkins_]
- dbaron: But you still need to know when the control has received input.
- 18:30:21 [dbaron]
- need an API for that
- 18:30:43 [dbaron]
- Tab: Not sure that's necessary here because if it's a custom control, you can put a class on it
- 18:31:29 [dbaron]
- fantasai: [reads definition of :user-error]
- 18:31:47 [glazou]
- Tab's prose has :user-error :-)
- 18:33:12 [dbaron]
- dbaron: [explains rationale for :-moz-ui-invalid]
- 18:33:55 [dbaron]
- fantasai: In terms of custom controls, you want it to really be invalid whenever it's invalid.
- 18:34:15 [dbaron]
- Tantek: More background here: one of the reasons for :-moz-ui-invalid was a short-term fix to be able to build UI because :invalid wasn't reasonable for UI.
- 18:34:47 [dbaron]
- Tantek: But there was discussion of not trying to combine meanings in one pseudo-class -- there was discussion of having a pseudo-class for whether the user has interacted with the element at all.
- 18:35:10 [dbaron]
- Tantek: If we're actually trying to fix this properly, we might want to consider this orthogonal pseudo-class.
- 18:35:23 [dbaron]
- Tantek: That was the context of the discussions about how :-moz-ui-invalid came to be.
- 18:35:42 [dbaron]
- fantasai: I'm happy to spec whatever you want to implement.
- 18:35:48 [dbaron]
- Bert: Sounds like :fresh
- 18:35:51 [dbaron]
- Tantek: or the opposite
- 18:36:01 [dbaron]
- Tantek: :user-dirtied
- 18:36:05 [dbaron]
- fantasai: :user-interacted
- 18:36:25 [dbaron]
- Tantek: A little vaguely defined -- tabbing through, clicking and then clicking elsewhere
- 18:36:36 [dbaron]
- Tantek: Don't want prematurely precise specification.
- 18:37:35 [dbaron]
- Tantek: ... distinguish between user-interacted with form or interacted with element?
- 18:37:48 [dbaron]
- Peter: We can't know what all possible ways of interaction will be over next 10 years.
- 18:38:03 [dbaron]
- Tantek: specify a simpler thing that designers can combine to get effects
- 18:38:13 [dbaron]
- fantasai: I think we should spec :user-error
- 18:38:27 [isherman]
- isherman has joined #css
- 18:38:38 [dbaron]
- fantasai: e.g., because we need things to be highlighted after user tries and fails to submit form
- 18:38:59 [dbaron]
- fantasai: I think we should spec this, and add that later when more concrete
- 18:39:06 [leaverou_]
- leaverou_ has joined #css
- 18:39:12 [dbaron]
- Tantek: This is just as concrete -- just the same thing without the intersection with :invalid
- 18:40:50 [dbaron]
- Florian: How do you select thing when user pressed submit, failed, and the user never interacted with control?
- 18:42:06 [dbaron]
- [lots of fast talking]
- 18:42:34 [dbaron]
- fantasai: could split out :user-omitted and :user-invalid
- 18:42:54 [dbaron]
- Florian: I'd like to have :user-error and also have what Tantek suggested
- 18:42:58 [dbaron]
- Florian: ...
- 18:43:02 [dbaron]
- Tab: That's placeholder
- 18:43:30 [dbaron]
- Tantek and Tab argue about how form UIs are designed
- 18:43:40 [dbaron]
- fantasai: Any objections to adding :user-error as is?
- 18:43:51 [dbaron]
- Bert: Can we add something like what Tantek said?
- 18:44:00 [dbaron]
- Tantek: I'd like to also mention :user-interacted
- 18:44:07 [dbaron]
- fantasai: I think it's separate
- 18:44:16 [dbaron]
- Tantek: Potentially makes :user-error unnecessary.
- 18:44:43 [dbaron]
- RESOLVED: Have :user-error as-is, and have an issue about :user-interacted.
- 18:44:56 [dbaron]
- Tab: Next up is the minor changed to the reference combinator.
- 18:45:10 [dbaron]
- Tab: We changed this to allow host languages to...
- 18:45:19 [dbaron]
- Tab: Before, attribute had to be IDREF or ID selector.
- 18:45:30 [dbaron]
- Tab: Now, have use cases from Web Components that want more ways to match.
- 18:45:46 [dbaron]
- Tab: Host language can define alternate ways (e.g., full selectors).
- 18:45:56 [dbaron]
- glazou: reference combinator badly needed for epub
- 18:46:26 [dbaron]
- fantasai: Then the column combinator (14.1)
- 18:46:40 [dbaron]
- q+
- 18:46:52 [dbaron]
- fantasai: this is a combinator, not a pseudo-class (as it was in previous draft)
- 18:47:07 [dbaron]
- fantasai: needs knowledge of the host language
- 18:47:33 [dbaron]
- fantasai: anything with a tabular structure and a row-major table
- 18:47:45 [dbaron]
- fantasai: In a column-major model, it's a row combinator.
- 18:47:53 [dbaron]
- glazou: The // are really too similar to a reference combinator.
- 18:48:02 [dbaron]
- glazou: why not || ?
- 18:48:08 [dbaron]
- Tab: Intended to look like a reference combinator
- 18:48:22 [dbaron]
- glazou: I don't want 2 things, one with keyword inside and the other without keyword inside.
- 18:48:28 [dbaron]
- fantasai: I'm happy with either option.
- 18:48:42 [dbaron]
- glazou: I'm happy with anything, but these really look too similar.
- 18:49:38 [dbaron]
- dbaron: I think I'm not happy with the change from pseudo class to combinator, but I don't remember why
- 18:50:24 [dbaron]
- fantasai: pseudo-class would create branching structure
- 18:50:28 [dbaron]
- ack dbaron
- 18:51:03 [dbaron]
- fantasai: Combinator intended to express relationship between elements, not pseudo-class.
- 18:51:49 [dbaron]
- glazou: Impossibility to use :nth-child() and friends to style rows and columns with spans.
- 18:51:59 [dbaron]
- dbaron: There's another selector here for that.
- 18:52:24 [fantasai]
- dbaron: concerned wrt perf for combinator rather than pseudo-class
- 18:52:30 [Bert]
- q+ to ask if that would also work for 'dt#d1 // dd' for "any of the DDs that belong to the DT with ID=d1"?
- 18:52:46 [fantasai]
- dbaron: authors will tend to write the faster option with the pseudo-class, but the slower with the combinator
- 18:53:03 [fantasai]
- dbaron: Now that UAs have implemented filtering for descendant combinators
- 18:53:13 [fantasai]
- dbaron: maybe that's not a huge problem...
- 18:53:21 [fantasai]
- dbaron: Another perf problem I forget
- 18:53:44 [dbaron]
- glazou: Alan and I wrote a document for pseudo-elements.
- 18:54:13 [dbaron]
- glazou: at some point want to eliminate restriction on other selectors to the right of pseudo-element
- 18:54:34 [dbaron]
- glazou: and then we could have the column as a pseudo-element and have selectors inside the table
- 18:55:06 [fantasai]
- dbaron: I actually have a model for selectors to the right of a pseudo-element specified in the overflow draft right now, based on discussions from one of our meetings
- 18:55:55 [fantasai]
- ACTION fantasai: summarize all issues raised here into the draft
- 18:55:56 [trackbot]
- Created ACTION-491 - Summarize all issues raised here into the draft [on Elika Etemad - due 2012-08-20].
- 18:56:11 [dbaron]
- Sylvain: This is dependent on document-language constructs?
- 18:56:12 [dbaron]
- fantasai: yes
- 18:56:28 [dbaron]
- fantasai: So wouldn't apply to grids, applies to table elements, not display:table.
- 18:56:35 [dbaron]
- fantasai: So, determining the subject of a selector
- 18:56:42 [dbaron]
- fantasai: Discussion on the list about syntax.
- 18:56:56 [dbaron]
- fantasai: Currently using an ! after the subject of the selector.
- 18:57:20 [dbaron]
- fantasai: Seemed better to append it because it splits the selector better when appended.
- 18:57:52 [dbaron]
- fantasai: We need to put something on the compound selector, and it either needs to be before or after.
- 18:58:17 [dbaron]
- glazou: Implemented this in STTS 14 years ago.
- 18:58:26 [dbaron]
- glazou: Want ! at beginning because it's visible; hard to see at end.
- 18:58:35 [dbaron]
- fantasai: ! at beginning also looks like "not"
- 18:58:56 [drublic]
- drublic has joined #css
- 18:59:09 [dbaron]
- glazou: Everybody confused by !important, but everybody using it without a problem.
- 18:59:35 [dbaron]
- fantasai: We need something either before or after subject.
- 18:59:40 [dbaron]
- fantasai: How does this work with pseudo-elements?
- 18:59:59 [dbaron]
- glazou: Alan and I extracted pseudo-elements spec from selectors4.
- 19:00:25 [dbaron]
- glazou: I think we have two things related to pseudo-elements: syntax, and then various pseudo-elements and the behavior they express.
- 19:00:43 [dbaron]
- glazou: I think extraction of pseudo-elements makes sense.
- 19:01:09 [dbaron]
- glazou: Pseudo-elements spec has informative, brief description of syntax.
- 19:01:54 [dbaron]
- fantasai: I would like people to think about this and I'll try to make the edits to :user-error. My goal is to publish a WD on Thursday.
- 19:02:05 [dbaron]
- Sylvain: Did we talk about :lang updates
- 19:02:12 [dbaron]
- fantasai: I was goin to in Hamburg, but forgot
- 19:02:24 [dbaron]
- fantasai: :lang() now accepts comma-separated list, and wildcard matching for BCP47
- 19:03:03 [dbaron]
- Florian: This was valuable for Metro?
- 19:03:09 [dbaron]
- Sylvain: Yes, can make style sheets a lot shorter.
- 19:03:50 [dbaron]
- fantasai: Are people ok with this?
- 19:04:24 [sylvaing]
- in scenarios where the content supports many languages - web apps/widgets, ebooks - this significantly shortens selectors
- 19:04:41 [dbaron]
- fantasai: Edits tonight, and maybe we can resolve to publish tomorrow?
- 19:06:06 [dbaron]
- Tantek: Maybe capture ! syntax as an issue and publish that way?
- 19:06:09 [dbaron]
- glazou: I'm not ok with that
- 19:06:19 [dbaron]
- fantasai: I'd like to resolve this issue or drop the feature.
- 19:06:44 [dbaron]
- glazou: I want it specified as prepend, though I'm ok with an issue noting that it's an issue.
- 19:06:56 [dbaron]
- Peter: Or we could do both.
- 19:07:03 [dbaron]
- Tab: Do we expect this to be implemented in normal CSS?
- 19:07:05 [vhardy_]
- vhardy_ has joined #css
- 19:07:14 [dbaron]
- did peter mean "before or after" or "before and after"?
- 19:07:25 [fantasai]
- both
- 19:07:32 [dbaron]
- Tab: I'd like to move this to a profile for batch processors.
- 19:07:35 [plinss]
- before and after
- 19:07:48 [dbaron]
- glazou: Top user feedback since 1998.
- 19:08:25 [dbaron]
- fantasai: Do we want profiles for dynamic and non-dynoamic?
- 19:08:36 [dbaron]
- glazou: we already have some profiles
- 19:09:01 [dbaron]
- fantasai: I'll create a profile that excludes it from dynamic
- 19:09:30 [dbaron]
- RESOLVED: ! before the selector (with issue about after)
- 19:09:38 [dbaron]
- Bert: Append with a space between?
- 19:10:21 [dbaron]
- €ul > li:only-child
- 19:10:56 [dbaron]
- Tab: Being able to style a column when you hover it isn't addressed by anything.
- 19:11:02 [dbaron]
- Tab: Because the column element isn't in :hover
- 19:11:34 [dbaron]
- glazou: stuff on the right of pseudo-element!
- 19:11:59 [dbaron]
- RESOLVED: publish new WD of selectors4
- 19:12:05 [dbaron]
- <br type="lunch">
- 19:13:19 [Koji_]
- Koji_ has joined #css
- 19:31:51 [jet]
- jet has joined #CSS
- 19:45:48 [Koji]
- Koji has joined #css
- 20:11:18 [jet]
- jet has joined #CSS
- 20:15:54 [fantasai]
- ScribeNick: fantasai
- 20:16:23 [fantasai]
- Tab: I was thinking about asking for FPWD, but think it's not quite ready yet
- 20:16:39 [fantasai]
- Tab: The purpose of bringing up here is to explain reasoning between having syntax draft
- 20:16:50 [fantasai]
- Tab: and get objections / feedback up front rather than later
- 20:17:10 [fantasai]
- Tab: CSS grammar is hard to work with a complicated grammar scheme, especially one that tries to be total -- to handle all possible byte streams
- 20:17:16 [fantasai]
- Tab: There are some things that are officially undefined
- 20:17:31 [fantasai]
- Tab: Even some cases defined, there are coner cases that are handled differently by different browsers
- 20:17:43 [fantasai]
- Tab: What I've done instead, instead of using a grammar, is to define in terms of a state machine parser
- 20:17:51 [fantasai]
- Tab: Broken up into 2 steps like HTML parsing algo
- 20:17:56 [fantasai]
- Tab: Fist step is tokenizer, other is parser
- 20:18:04 [fantasai]
- Tab: resulting in a CSS OM
- 20:18:12 [fantasai]
- Tab: Goal is to make everything extremely well-defined
- 20:18:17 [fantasai]
- Tab: Also make it easy to modify,
- 20:18:28 [fantasai]
- Tab: And easy to read and understand
- 20:18:39 [fantasai]
- Tab asks dbaron for feedback
- 20:18:58 [fantasai]
- dbaron: Some of it, I just don't quite understand what states your state machine goes through in the parser
- 20:19:02 [fantasai]
- dbaron: Not so worried about tokenizer side
- 20:19:28 [fantasai]
- Tab: There's a top-level state, and then 3 substates: at-rule, selector, ..
- 20:19:37 [fantasai]
- Tab: at-rule mode or selector mode, depending on what is seen
- 20:19:47 [glazou]
- http://dev.w3.org/csswg/css3-syntax/#top-level-mode-
- 20:20:12 [fantasai]
- Tab: parser very easy to write, took me about a day. Tokenizer took about a week
- 20:20:25 [fantasai]
- dbaron: Part of what worries me is that
- 20:20:36 [fantasai]
- dbaron: defining correct error recovery with this parser spec
- 20:20:47 [fantasai]
- dbaron: we have a bunch of abstract error-recovery rules, we know exactly what they mean
- 20:20:59 [fantasai]
- dbaron: With this spec, seems easy to get the error-recovery rules wrong in the spec
- 20:21:09 [fantasai]
- Tab: Differing implementations of those rules
- 20:21:25 [Rossen]
- Rossen has joined #css
- 20:21:27 [fantasai]
- dbaron: Because easy to make mistakes in the implementation
- 20:21:47 [fantasai]
- dbaron: Also some rules are well-understood in CSSWG, but poorly explained in spec, so we have a clear definition, but others can't interpret one so easily
- 20:21:56 [fantasai]
- dbaron gives an example of matching curly braces
- 20:22:14 [fantasai]
- dbaron: If you describe that as an abstract rule, you describe it and you're done
- 20:22:30 [fantasai]
- dbaron: If you do it as a state machine, you need to fall into that out of many different states
- 20:22:43 [fantasai]
- Tab explains how he handles it
- 20:22:45 [fantasai]
- in the spec
- 20:23:02 [fantasai]
- Tab: I think I've handled that correctly
- 20:23:23 [fantasai]
- Florian: Even if you do it right now, wouldn't what dbaron says mean we might easily make mistakes in future extensions?
- 20:23:33 [fantasai]
- Tab: I think I've defined it in away that you get it for free
- 20:23:37 [fantasai]
- dbaron talks about a stack of stacks
- 20:23:50 [fantasai]
- dbaron: Stack defines recovery points
- 20:23:58 [fantasai]
- Tab: Initial concept is stacks, where you can enter an error
- 20:24:17 [vhardy_]
- vhardy_ has joined #css
- 20:24:22 [fantasai]
- Tab: Once you enter an error state, it knows how to consume to where it needs to be. Consumes a block s part of that, no further error handling there
- 20:24:35 [fantasai]
- dbaron: We should probably sit down together some other time
- 20:24:53 [fantasai]
- Tab: There are some minor changes to the grammar, discussed by the group
- 20:25:06 [fantasai]
- Tab: Including the plus-or-minus sign direction in the definition of NUMBER token
- 20:25:43 [fantasai]
- Tab: Group resolved to include that already
- 20:26:01 [fantasai]
- Tab: A few other places with corner cases or inconsistencies. Need to list them
- 20:26:28 [fantasai]
- Florian: Didn't you discuss at some point not accepting comments between ! and important?
- 20:26:45 [fantasai]
- Tab: One issue that makes parser hard to handle right now... gives parser infinite lookahead
- 20:26:53 [fantasai]
- Tab: Appears we need to retain comments in token stream
- 20:27:06 [fantasai]
- Tab: Then you can have unlimited number of tokens between ! and important
- 20:27:23 [fantasai]
- Tab: !/*comment*/ /*... */ /*...*/important
- 20:27:39 [fantasai]
- Tab: ...
- 20:27:47 [fantasai]
- dbaron: I don't see what you mean here.
- 20:27:53 [fantasai]
- dbaron: why is this lookahead?
- 20:28:00 [fantasai]
- dbaron: You get a !
- 20:28:06 [fantasai]
- dbaron: you go into "parsing !important" path
- 20:28:16 [fantasai]
- dbaron: Either you get identifier "important"
- 20:28:26 [fantasai]
- dbaron: Or you get something else, in which case you go into error condition
- 20:28:50 [fantasai]
- Tab: Issue is, it's not always an error
- 20:29:01 [fantasai]
- Tab: could have it in a variable
- 20:29:07 [fantasai]
- dbaron: Think we should change it so ! can't show up in a variable
- 20:29:24 [fantasai]
- Tab: ! would be counted as a delim, which is a valid part of a variable
- 20:29:47 [fantasai]
- ...
- 20:29:59 [fantasai]
- dbaron: Don't think saying you can't have a ! in variable prevents [that]
- 20:30:10 [fantasai]
- Tab: Then I'd have to be more explicit in the grammar
- 20:30:20 [fantasai]
- Tab: Before, just match value production, and everything worked
- 20:30:54 [fantasai]
- ...
- 20:31:08 [fantasai]
- Florian: Do people put comments between '!' and 'important'?
- 20:31:44 [fantasai]
- glazou: You should check
- 20:31:51 [fantasai]
- Bert: I don't think we need to check, there's no reason to change it
- 20:32:14 [fantasai]
- Tab: Plan to ask FPWD within next 2-3 weeks
- 20:32:19 [fantasai]
- Tab: Please bring up objectins on the list beforehand
- 20:32:32 [fantasai]
- Bert: Would like the grammar normative, not the state machine
- 20:32:38 [fantasai]
- Tab: I would like the opposite
- 20:33:35 [fantasai]
- Tab: If the grammar doesn't cover every possible input stream, then it's not well-defined error recovery
- 20:33:45 [fantasai]
- Bert: I don't care about those
- 20:33:49 [fantasai]
- jdaggett: Why not?
- 20:34:17 [fantasai]
- jdaggett: There are many features of CSS that are implemented only within more recent versions of a browser, they are handled as errors by older browsers
- 20:34:23 [fantasai]
- Bert: But all of those are within the core grammar
- 20:34:46 [fantasai]
- Bert: original model was only to define correct style sheets, slowly been adding more rules to handle errors
- 20:34:58 [fantasai]
- Tab: I care that we define all error-handling
- 20:35:05 [fantasai]
- Florian: And all interpret them the same way
- 20:35:26 [fantasai]
- Florian: For HTML parsing, having common CSS handling has been important to get interop
- 20:35:32 [fantasai]
- Florian: Think the situation is not as bad for CSS
- 20:35:46 [fantasai]
- Florian: I'm tempted to go this way, though I don't think we need it as badly as HTML
- 20:36:10 [fantasai]
- Tab: We have inconsistent/poorly-explained rules for handling e.g. braces. Want to make this obvious and clear.
- 20:36:26 [fantasai]
- s/braces/braces in unexpected places/
- 20:36:38 [fantasai]
- Tab: Can implement as not a state machine
- 20:36:47 [fantasai]
- Tab: as long as results match
- 20:37:03 [fantasai]
- Bert: Can't, if it's a state machine have to parse in start-to-end order
- 20:37:20 [fantasai]
- Bert: Proving this one is the same as the CSS2.1 grammar is going to be hard
- 20:37:27 [fantasai]
- Tab: Plan to throw lots of tests at it
- 20:37:48 [fantasai]
- Bert: We need to prove the spec, not the implementations here
- 20:38:04 [fantasai]
- Bert: Looks like a big step backwards to replace one page of nice grammar with however many pages of text
- 20:38:19 [fantasai]
- Tab: The one page of nice grammar isn't interpretable by normal people without help from the CSSWG
- 20:38:49 [fantasai]
- sylvaing: Implementers prefer this (the state machine)
- 20:39:29 [fantasai]
- Bert: Context-free grammars were meant to replace this kind of thing
- 20:39:41 [fantasai]
- Tab: Context-free is great for things like properties, where once it's invalid, you're done
- 20:40:05 [fantasai]
- Tab: But doesn't work so well for general total parsing
- 20:40:27 [fantasai]
- Bert: When adding new features, need to know what is valid per grammar
- 20:40:50 [fantasai]
- Tab: Grammar's are great for higher-level things, not so great for parsing
- 20:42:16 [fantasai]
- ACTION TabAtkins: Fill out Changes from CSS 2.1 Core Grammar section, intro etc.
- 20:42:16 [trackbot]
- Sorry, couldn't find user - TabAtkins
- 20:42:56 [fantasai]
- Topic: Case-insensitive/sensitive identifiers
- 20:42:57 [TabAtkins_]
- ACTION Tab: Fill out Changes from CSS 2.1 Core Grammar section, intro etc.
- 20:42:57 [trackbot]
- Created ACTION-492 - Fill out Changes from CSS 2.1 Core Grammar section, intro etc. [on Tab Atkins Jr. - due 2012-08-20].
- 20:43:32 [fantasai]
- jdaggett: need to discuss case-insensitivity issue
- 20:43:38 [fantasai]
- fantasai: Don't think it's a parsing issue
- 20:44:26 [fantasai]
- jdaggett: I think some of the arguments made about case-sensitivity are wrong
- 20:44:37 [fantasai]
- ACTION: fantasai and jdaggett to discuss case-sensitivity at the break
- 20:44:37 [trackbot]
- Created ACTION-493 - And jdaggett to discuss case-sensitivity at the break [on Elika Etemad - due 2012-08-20].
- 20:45:44 [TabAtkins_]
- ScribeNick: TabAtkins_
- 20:45:52 [TabAtkins_]
- Topic: CSS Fragmentation
- 20:46:10 [TabAtkins_]
- fantasai: There was a bunch of outstanding edits from Hamburg and in-between.
- 20:46:18 [TabAtkins_]
- fantasai: One was adding recto/verso to the break properties. That's done.
- 20:46:33 [TabAtkins_]
- fantasai: Another was the "Splitting Boxes at Breaks" section.
- 20:47:14 [TabAtkins_]
- fantasai: We'd decided that if the box is block-level with a specified height..
- 20:47:29 [TabAtkins_]
- fantasai: I interpreted "specified height" in the resolution as "specified length or percentage".
- 20:47:36 [TabAtkins_]
- fantasai: We didnt' discuss non-block elements.
- 20:47:52 [TabAtkins_]
- fantasai: I put inline in the "doesn't stretch to the end of the fragment" category.
- 20:48:04 [TabAtkins_]
- dbaron: Limiting the extra-space rule to length or percentage...
- 20:48:15 [TabAtkins_]
- dbaron: If you have min-content, I think you want it there.
- 20:48:36 [TabAtkins_]
- dbaron: You don't want a break to make height:min-content overflow.
- 20:49:23 [TabAtkins_]
- fantasai: Different issue. height:min-content will *draw the background* in the rest of the fragment, but yeah, it won't consume any of the height, so it wont' overflow.
- 20:49:46 [dbaron]
- dbaron: That it doesn't consume any of the specified height should apply to all types of heights.
- 20:49:55 [TabAtkins_]
- fantasai: The other case we didnt' discuss was table-cells, grid cells, and flex items.
- 20:50:10 [TabAtkins_]
- fantasai: The reason we decided not to draw the bg was if you were lining up your background with the content.
- 20:50:31 [TabAtkins_]
- fantasai: But in the other layout models, flex/grid/etc, you're putting things side-by-side. You want the boxes to end together.
- 20:50:46 [TabAtkins_]
- fantasai: So I think it makes sense for those to draw to the bottom of the page.
- 20:51:06 [TabAtkins_]
- szilles: I'm hearing use-cases for both solutions.
- 20:51:16 [TabAtkins_]
- szilles: So you'll probably want a property for this later.
- 20:52:04 [TabAtkins_]
- szilles: So it seems simpler to just pick a single answer for all of these for now, even if it's suboptimal for some, and address it later with an explicit property, rather than choosing different answers for lots of different things.
- 20:52:32 [TabAtkins_]
- fantasai: I would almost rather have none of them gap, than all of them gap.
- 20:52:59 [TabAtkins_]
- szilles: Yeah, sure. I just think people will be more confused by having to deal with an 'auto' value that chooses things "intelligently" than having a single answer that's not always correct by default.
- 20:53:47 [TabAtkins_]
- fantasai: [shows some ascii diagrams of the behavior we ended up deciding on for slice/clone for blocks\
- 20:54:17 [TabAtkins_]
- fantasai: So, do we accept the edits?
- 20:55:38 [TabAtkins_]
- fantasai: Basically what I have is that anything that's not a block *always* does the behavior where it extends to the bottom.
- 20:55:59 [dbaron]
- s/Stack defines recovery points/Outer stack for each error recovery point, inner stack for the ({[ that you have to match to get back to it/
- 20:56:24 [TabAtkins_]
- szilles: Right, I think everything should use the top or bottom behavior.
- 20:58:30 [hasni-2pac]
- hasni-2pac has joined #css
- 20:58:48 [TabAtkins_]
- fantasai: [explains the ascii examples more thoroughly]
- 20:59:06 [TabAtkins_]
- RESOLVED: Accept fantasai's edits for the breaking/painting rules.
- 20:59:21 [TabAtkins_]
- fantasai: Next is how to deal with the page-break-before/break-before aliasing.
- 20:59:40 [TabAtkins_]
- fantasai: Florian's idea was to treat the page-break-before property as a shorthand for the break-before property.
- 21:00:19 [TabAtkins_]
- fantasai: All the values map to themselves, except page-break-before:always maps to break-before:page.
- 21:01:20 [jdaggett_]
- jdaggett_ has joined #css
- 21:01:23 [TabAtkins__]
- TabAtkins__ has joined #css
- 21:02:12 [glazou_]
- glazou_ has joined #css
- 21:02:18 [vhardy_]
- vhardy_ has joined #css
- 21:02:28 [tantek_]
- tantek_ has joined #css
- 21:02:41 [TabAtkins__]
- florian: The only issue is that the 'item()' function on CSSSTyleDeclaration, it expands shorthands and only has the longhands. So, you lose the 'page-break-*' versions here. But doing it any other way turns out to be a lot of work for very little gain.
- 21:02:51 [vhardy__]
- vhardy__ has joined #css
- 21:03:10 [TabAtkins__]
- florian: So I consider the suggestion the best possible rule.
- 21:03:56 [dbaron]
- dbaron has joined #css
- 21:04:38 [TabAtkins_]
- TabAtkins_ has joined #css
- 21:04:43 [glazou_]
- glazou_ has joined #css
- 21:05:11 [TabAtkins_]
- fantasai: [explains why page-break-before:avoid should map to break-before:avoid, rather than break-before:avoid-page]
- 21:05:39 [TabAtkins_]
- vhardy__: Okay. It just seems like we're losing the kind of break.
- 21:05:53 [jdaggett_]
- jdaggett_ has joined #css
- 21:05:54 [TabAtkins_]
- fantasai: Sure, but this is just a legacy thing. You can get all the breaks you want by using the correct property name.
- 21:06:17 [lstorset]
- lstorset has joined #css
- 21:06:23 [fantasai]
- http://lists.w3.org/Archives/Public/www-style/2012Aug/0351.html
- 21:06:43 [vhardy_]
- vhardy_ has joined #css
- 21:06:48 [fantasai]
- Murakami-san explains why avoid should map avoid and not avoid-page
- 21:07:24 [vhardy__]
- vhardy__ has joined #css
- 21:07:27 [florian]
- florian has joined #css
- 21:07:46 [TabAtkins_]
- RESOLVED: Accept the spec's mapping of page-break-* to break-* as a shorthand.
- 21:08:42 [TabAtkins_]
- fantasai: Alan brought up the issue that if I request a column break, but I'm not in a column context, but I *am* paginated, should I get a page break instead?
- 21:08:47 [TabAtkins_]
- fantasai: That makes sense to me.
- 21:09:25 [TabAtkins_]
- fantasai: The test says that when a forced break occurs, it finds the nearest fragmenter of the correct type, breaking through any intervening fragmenters.
- 21:09:38 [TabAtkins_]
- fantasai: Going all the way to the root if necessary.
- 21:10:24 [TabAtkins_]
- fantasai: The alternative would be to define column breaks to also act like page breaks otherwise.
- 21:10:34 [TabAtkins_]
- fantasai: The difference is how the two interact with regions, and future fragmenters.
- 21:11:31 [TabAtkins_]
- dbaron: So if there's no matching fragmenter context, it just breaks everything?
- 21:12:35 [TabAtkins_]
- dbaron: My intuition would be that nothing breaks if there's no matching fragmentation context.
- 21:13:08 [TabAtkins_]
- dbaron: The other option is that we have a ranked ordering of break types.
- 21:13:17 [TabAtkins_]
- fantasai: Or setting an explicit equivalency.
- 21:13:47 [TabAtkins_]
- szilles: I think the "find the nearest fragmenter" was a positive change.
- 21:15:11 [TabAtkins_]
- TabAtkins_: fantasai, can you justify why you want a column break, if you request a page break and are not paginated?
- 21:15:34 [TabAtkins_]
- fantasai: Because you want the broken thing to be at the top of *something*. If you can't be at the top of a page, being at the top of a column is the next-best thing.
- 21:16:09 [TabAtkins_]
- plinss: Looking at OpenOffice (and maybe Word), column breaks dont' turn into page breaks in a single-col situation.
- 21:16:43 [TabAtkins_]
- fantasai: I think the way to get the text you guys want is...
- 21:16:55 [TabAtkins_]
- fantasai: If a column break is requested, it'll be satisfied by a page break, but not the other way around.
- 21:19:30 [TabAtkins_]
- [some confusing discussion, conclusion was still the "find nearest matching fragmenter, if there isn't one then no-op"]
- 21:19:51 [TabAtkins_]
- Rossen: Somewhat farfetched, but if you had nesting of different frag types, like columns inside of regions.
- 21:20:21 [TabAtkins_]
- Rossen: And you have content that wants to break at some point inside the region... You can do this kind of handshake between stacks.
- 21:20:55 [TabAtkins_]
- Rossen: And if there's nothing, it doesn't break.
- 21:21:02 [TabAtkins_]
- fantasai: Okay, sounds like a clear resolution.
- 21:21:24 [TabAtkins_]
- RESOLVED: Breaks seek the nearest matching fragmenter, and break everything between. If there is no match, no break occurs.
- 21:21:59 [TabAtkins_]
- fantasai: Next, there are two interpretations of "always": break the nearest fragmenter, or break everything.
- 21:22:44 [TabAtkins_]
- sylvaing: "all" for all of them?
- 21:22:53 [TabAtkins_]
- Bert: Not sure if we need the "break everything" one.
- 21:23:03 [fantasai]
- s/"all"/"all-the-things"/
- 21:24:07 [TabAtkins_]
- dbaron: I like "any" and "all".
- 21:24:14 [TabAtkins_]
- TabAtkins_: What does "always" do, then?
- 21:24:25 [TabAtkins_]
- dbaron: I thought "always" was only for page-break-*.
- 21:24:38 [TabAtkins_]
- dbaron: Do we need break-*:always?
- 21:25:01 [TabAtkins_]
- fantasai: multicol has "always" in it.
- 21:26:49 [TabAtkins_]
- TabAtkins_: So let's get some testing to see what impls actually do for "break-before: always", and if we can drop it.
- 21:27:30 [TabAtkins_]
- RESOLVED: Add "any" and "all" to break-*, research what to do for "always".
- 21:29:19 [TabAtkins_]
- plinss: any objections to publishing a new WD with these edits?
- 21:29:31 [dbaron]
- break: glass ! in case of emergency;
- 21:29:33 [fantasai]
- ACTION fantasai: define root fragmenting element
- 21:29:33 [trackbot]
- Created ACTION-494 - Define root fragmenting element [on Elika Etemad - due 2012-08-20].
- 21:29:43 [TabAtkins_]
- RESOLVED: Publish a new WD of Break, after the edits resolved on during this session.
- 21:31:51 [TabAtkins_]
- fantasai: Whoops, remaining issue is about broken floats - should they stay next to each other or not if the second page is narrower than the first?
- 21:32:55 [TabAtkins_]
- fantasai: Option A is to try and shrink the floats to keep them side-by-side. If they can't be shrunk enough, they just overflow.
- 21:33:22 [TabAtkins_]
- fantasai: Option B is to use the normal float collision algorithm on the fragments, so that one may move below the other.
- 21:34:08 [TabAtkins_]
- szilles: I prefer B for the simpler behavior - it's the same as normal float behavior.
- 21:34:17 [TabAtkins_]
- dbaron: I don't understand hwo you get the option A behavior.
- 21:34:38 [TabAtkins_]
- dbaron: auto-width floats depend on the width of their containing block and their contents, not surronding floats.
- 21:34:45 [TabAtkins_]
- dbaron: So what makes floats get narrower in this case?
- 21:35:06 [TabAtkins_]
- fantasai: This very overconstrained situation.
- 21:35:15 [TabAtkins_]
- Rossen: But that changes the behavior of floats.
- 21:36:14 [TabAtkins_]
- fantasai: So people seem to prefer B?
- 21:37:00 [TabAtkins_]
- Rossen: [outlines why it makes sense to do option B for varying-width containers]
- 21:37:43 [TabAtkins_]
- florian: I think you're saying that percentage-width floats change their size in the next page?
- 21:38:06 [TabAtkins_]
- szilles: Yes, that's already in the spec.
- 21:38:36 [TabAtkins_]
- dbaron: One thing the float placement rules say is that, if you wanna place a new float, you must ensure that its top is below the top of any other floats.
- 21:38:47 [TabAtkins_]
- dbaron: So here you get into interesting issues where you have a bunch of existing floats...
- 21:39:08 [TabAtkins_]
- dbaron: So if you're in the situation in the option B diagram...
- 21:40:42 [TabAtkins_]
- dbaron: If a narrow float is anchored in the little bit of text above the right float piece, does it sit there? Can it push the right float down?
- 21:41:13 [TabAtkins_]
- TabAtkins_: I think all the float pieces should be considered as originating at the start of the page, so any flaots anchored in the page normally are "after" them, and thus are subject to normal float placement rules.
- 21:41:24 [TabAtkins_]
- dbaron: I think I agree. I'm curious if I implemented that.
- 21:42:13 [TabAtkins_]
- dbaron: So I think we need to amend the float placement rules, either here or in the float spec, to make sure this is specified.
- 21:42:31 [TabAtkins_]
- Rossen: I think this might already be included. We can refer to them and extend if there's something missing here.
- 21:42:50 [fantasai]
- Tab: In this case, on the second page here
- 21:43:01 [fantasai]
- Tab: You have a page-break-before the word float on the second line
- 21:43:10 [fantasai]
- Tab: And the next page is extra-wide, what happens there?
- 21:43:34 [fantasai]
- dbaron: More interesting question, what about a new float?
- 21:43:49 [fantasai]
- .... unplaced continuations
- 21:45:09 [TabAtkins_]
- fantasai: And if you had a break in the left float, wouldnt' that make the left float go all the way to the bottom?
- 21:45:22 [TabAtkins_]
- fantasai: Would this depend on the gap/no-gap behavrio difference?
- 21:45:26 [dbaron]
- We need to decide if the pushing down the unplaced float happens only for unplaced floats that can go on the current page, or for breaks that have been forced to the next page.
- 21:45:40 [TabAtkins_]
- fantasai: I think we need it to continue to the bottom of the page by default, because of floats used for columns.
- 21:46:17 [fantasai]
- side discusion of whether forced breaks in floats should affet surrounding contents: no they should not
- 21:46:22 [fantasai]
- s/affet/affect/
- 21:47:55 [fantasai]
- plinss: If I have an auto-width float, and it breaks across pages, will it have the same width across pages?
- 21:48:15 [fantasai]
- fantasai: depends on whether it landed on min-content/max-content or on fill-available in the shrink-to-fit expression
- 21:48:41 [fantasai]
- fantasai: if it lands on fill-available, it will vary
- 21:48:59 [TabAtkins_]
- fantasai: But if it landed on min/max-content, then it sticks with that for all the fragments, and is constant.
- 21:49:40 [dbaron]
- dbaron: min-content and max-content should always measure across all the fragments
- 21:49:48 [fantasai]
- [that's not exactly true; depends on whether it recalculates to fill-available at some point. But min/max-content are not recalculated per fragment]
- 21:50:40 [TabAtkins_]
- RESOLVED: Use Option B (float fragments are placed as if they're new independent floats).
- 21:51:01 [TabAtkins_]
- dbaron: I think we need someone to propose an adjustment for the float placement rules.
- 21:51:50 [TabAtkins_]
- dbaron: So that when you move from a wider to a narrower, you may not be able to place all of the fragments on the same line.
- 21:52:16 [TabAtkins_]
- dbaron: You consider the top of the float fragment, not the float itself, when placing on the new page. But maybe you don't consider the top of the fragment when you place on a third page?
- 21:53:27 [TabAtkins_]
- szilles: If there are floats continued from previous fragmentainers, process the floats in the order they were originally declared, then the content.
- 21:54:23 [TabAtkins_]
- florian: Problem is if there's a small float in the content, does it get pushed to the next page as well if one of the fragments breaks again?
- 21:54:32 [TabAtkins_]
- florian: I think we agreed to push it.
- 21:55:17 [tantek]
- (fragmentainer?)
- 21:57:19 [SteveZ]
- The principle that I was trying to propose was that layout of a fragmentainer is done using the normal layout rules (including the rules for float collision avoidance) on the content coming into that fragmentainer.
- 21:57:44 [dbaron]
- ACTION fantasai write a proposal for how to modify the float placement rules for the presence of fragmentation -- in particular, saying that the continued fragments of floats continued from the previous (or earlier) fragment are placed in the current fragment in the original order, and figuring out whether it's allowed to place the top of a float (a) when there's a continued float that could be placed in the current fragment but hasn't been placed yet [consens
- 21:57:44 [trackbot]
- Created ACTION-495 - Write a proposal for how to modify the float placement rules for the presence of fragmentation -- in particular, saying that the continued fragments of floats continued from the previous (or earlier) fragment are placed in the current fragment in the original order, and figuring out whether it's allowed to place the top of a float (a) when there's a continued float that could be placed in the current fragment but hasn't been placed yet [c
- 21:57:44 [dbaron]
- us leaning towards yes] and (b) when there's a continued float that needs to be placed in the next fragment (e.g., because of a forced break) [no consensus yet]
- 21:58:32 [SteveZ]
- The content coming into the fragmentainer consists of the normal flow, the fragment of any floats that were fragmented in the order in which they were originally called out.
- 22:00:31 [SteveZ]
- Then, the float fragments are placed first, using the normal float rules and then the normal content is placed and any floats called out in this normal content will be place after thatfloats carriend into this framentainer.
- 22:02:38 [TabAtkins_]
- <br duration=15m>
- 22:15:14 [dholbert]
- dholbert has joined #css
- 22:22:56 [fantasai]
- Topic: Pseudo-elements
- 22:23:00 [stearns]
- http://adobe.github.com/css-pseudo-elements/docs/css4-pseudoelements.html
- 22:23:00 [fantasai]
- ScribeNick: fantasai
- 22:23:22 [fantasai]
- ScribeNick: Bert
- 22:23:22 [molly]
- molly has joined #css
- 22:23:40 [Bert]
- Topic: pseudo-elements
- 22:24:29 [vhardy_]
- vhardy_ has joined #css
- 22:24:38 [arronei_]
- topic::pseudo-elements is think is more correct.
- 22:24:52 [Bert]
- Alan: [explains the idea: multiple pseudo-elements on same selector]
- 22:25:09 [Bert]
- ... Not just for regions.
- 22:25:25 [Bert]
- ... Generated content also. Presentational effects.
- 22:25:34 [leaverou]
- leaverou has joined #css
- 22:25:47 [Bert]
- ... Multiple ::before's avoids having to add elements.
- 22:26:08 [Bert]
- fantasai: Good to see somebody workin gon defining pseudo-elements, but
- 22:26:20 [Bert]
- ... cascade doesn't work well like this.
- 22:26:56 [Bert]
- ... Imagine somebody trying to override he style of a :before, but it is actually the 15th :before...
- 22:27:12 [Bert]
- Alan: It has a :nth-pseudo shortcut.
- 22:27:27 [Bert]
- ... That selects all pseudos at one.
- 22:27:33 [Bert]
- ... But we can put in an issue.
- 22:28:22 [Bert]
- glazou: Oridinals, if interleaved :after and :before.
- 22:28:52 [Bert]
- dbaron: If content is not none on the 5th :before,the 5th before gets generated.
- 22:29:23 [Bert]
- Alan: If there is nothing in the 1st four, than the 5th is actually the first.
- 22:29:42 [Bert]
- peterl: it doesn't create, only select.
- 22:29:56 [Bert]
- fantasai: What aother use cases?
- 22:30:20 [Bert]
- alan: Example is if you have pseudo for a quote that matches [???]
- 22:30:39 [Bert]
- ... If you have two :afters, you can have two styles for those two parts,
- 22:30:58 [Bert]
- dbaron: That doens't sound a case that generated content is for.
- 22:31:11 [Bert]
- [See Mark Twain example in spec]
- 22:31:41 [Bert]
- dbaron: That is bad practice. Imagine you take the style sheet away...
- 22:31:51 [fantasai]
- dbaron: That's bad practice because if you take the style sheet away, the content disappears. I don't think we should encourage that, and I absolutely don't think we should have that example in the spec
- 22:31:59 [Bert]
- glazou: But it is existing practice.
- 22:32:17 [Bert]
- plinss: Difference between encouraging and allowing it.
- 22:32:28 [fantasai]
- dbaron: Don't think it should be allowed to drive the design of features.
- 22:32:44 [Bert]
- TabAtkins_: Multiple cases where you run out of pseudo elements.
- 22:33:07 [Bert]
- alan: Valid use case. Differentstyles for different added blocks.
- 22:33:35 [Bert]
- plinss: It can come from attributes ort just four diffretn strings.
- 22:34:01 [Bert]
- dbaron: This is way beyond what people shpould uss generated content for.
- 22:34:09 [fantasai]
- fantasai: Might also want to turn some of those into links.
- 22:34:12 [molly]
- Generated content's a serious issue for a11y as well - we're trying to discourage the issue dbaron describes - it's difficult.
- 22:34:22 [Bert]
- q+ to suggest templates instead
- 22:34:55 [Bert]
- TabAtkins_: You run out of elements to attach style to.
- 22:35:07 [Bert]
- fantasai: image borders can do that example.
- 22:35:18 [Bert]
- ... shouldn't need to know which pseudo style.
- 22:35:34 [dbaron]
- Tab: want to do speech bubble and quotation marks
- 22:35:41 [Bert]
- TabAtkins_: There are well established patterns for useing pseduos for sttyleing.
- 22:35:47 [dbaron]
- dbaron: well, ignoring that the whole business of doing quotation marks with pseudo elements is a disaster...
- 22:36:14 [Bert]
- fantasai: Everytime [scribe forot the rest]
- 22:36:38 [Bert]
- tantek: We had :outside:inside at some point.
- 22:36:39 [drublic]
- drublic has joined #css
- 22:36:49 [Bert]
- fantasai: [missed]
- 22:36:53 [tantek]
- ::outside and ::inside - but yeah
- 22:37:13 [Bert]
- alan: multiple style sheets with their own pseidos that *don't* cascade is another use case.
- 22:37:35 [Bert]
- ted: So yu have to know how many pseudos an element has?
- 22:37:50 [Bert]
- florian: If you want two icons, e.g.
- 22:38:04 [fantasai]
- e.g. external link, or PDF link
- 22:38:06 [fantasai]
- or both
- 22:38:38 [Bert]
- ted: nubering the pseufos is not so good for avoiding clashes between styles sheets.
- 22:39:10 [Bert]
- tantek: There are use cases, but indexing mexhanism will lead to compatition (war) betwene designs.
- 22:39:44 [dbaron]
- Bert: Hixie came up with multiple pseudos a long time ago -- doesn't cascade.
- 22:40:10 [dbaron]
- Bert: That's the most important reason for template idea -- template doesn't have numbers, they have names.
- 22:40:16 [dbaron]
- ?: how are they ordered
- 22:40:28 [dbaron]
- Bert: visual layout
- 22:40:54 [dbaron]
- glazou: Writing ::before(n) is very easy for authors to write and modify
- 22:41:00 [Bert]
- glazou: all solutions, incluing templates, is more difficult for authors than multiple :befores.
- 22:41:34 [Bert]
- tab: Template cannot create something that allows line breaks between the pseudos.
- 22:41:55 [TabAtkins_]
- Template forces us into, at best, something like inline-block.
- 22:42:07 [glazou]
- http://css-tricks.com/use-cases-for-multiple-pseudo-elements/
- 22:42:22 [TabAtkins_]
- Having a link with an external and type badges afterwards, we'd be unable to have the link break across lines like a normal inline element.
- 22:42:36 [Bert]
- glazou: This is sombody who is in favor
- 22:42:48 [Bert]
- fantasai: It only works in simple cases.
- 22:42:51 [fantasai]
- fantasai: It works fine in simple cases where you don't have interactions among multiple sources of styles
- 22:43:19 [Bert]
- glazou: How do you select a created box, or a collection of boxes. We can't currently.
- 22:44:06 [Bert]
- s/can't/can/
- 22:45:11 [Bert]
- ... It is in the proposal: :nth-pseudo
- 22:45:23 [Bert]
- ted: How about pseudos in other modules?
- 22:45:37 [Bert]
- ... E.g., overflow regions, as psoposed by dbaron.
- 22:46:06 [Bert]
- ... Don;t know how many regions, cannot selects the last-but-one.
- 22:46:33 [Bert]
- Alan: You can selects from the end, :nth-last
- 22:46:59 [Bert]
- TabAtkins_: Fine if there is a fixed number,not if the style can generate more.
- 22:47:41 [Bert]
- alan: could even apply nth-pseudo to regions, to select the nth region, using 'region' as the type.
- 22:48:17 [Bert]
- florian: allows nth line?
- 22:48:30 [Bert]
- glazou: Probably left over from older verison of spec. Not supposed to work.
- 22:48:57 [Bert]
- florian: different priperties apply to different [pseudos. Do also to nth-pseudo?
- 22:49:02 [Bert]
- glazou: Absolutely,
- 22:49:37 [Bert]
- florian: Sounds like nth-after and nth-before might be better, you'll know which properties apply.
- 22:50:11 [Bert]
- glazou: we thought about extending later. We saw a few rtequests from users.
- 22:50:35 [Bert]
- ... typically mutliple decorations, borders around an element.
- 22:50:50 [Bert]
- ... Need multiple paddings betweme the multiple borders, e.g.
- 22:51:09 [fantasai]
- Bert: I think you should distinguish between what people are trying to do, and what they are requesting.
- 22:51:25 [fantasai]
- Bert: E.g. people want multiple borders, but they request multiple pseudos.
- 22:51:41 [fantasai]
- Rossen: Can you point us to actual examples of this?
- 22:52:50 [Bert]
- alan: users asking for multiple generated content. Not sure if pseduos is always th ebest way for it.
- 22:53:04 [fantasai]
- alan: to draw pictures
- 22:53:16 [Bert]
- TabAtkins_: Many things that are cool to have, later.
- 22:53:46 [fantasai]
- Rossen: As soon as you extend structure into this, it's trying to reinvent HTML in CSS
- 22:53:47 [Bert]
- rossen: adding complxeity into th esolution, adding structure, sounds like implementing HTML inside CSS.
- 22:54:00 [Bert]
- ... Why not use HTML?
- 22:54:22 [Bert]
- fantasai: XBL was also suppsoed to solve this.
- 22:54:33 [Bert]
- TabAtkins_: But nobody implemented that.
- 22:55:04 [Bert]
- glazou: We have a way to present all attributes with the same style, but not with different styles.
- 22:55:13 [Bert]
- fantasai: So that is a use case.
- 22:55:39 [dbaron]
- I think including :before and :after in CSS was a mistake.
- 22:55:45 [Bert]
- ... But can also make it appear as an element, able to be styled.
- 22:56:05 [Bert]
- ... We're also trying to olve the multiple border case, multiple icons case, etc.
- 22:56:20 [Bert]
- ... We should try to solve these in a better way.
- 22:56:35 [Bert]
- ... This proposal is awkward for all of them.
- 22:56:46 [Bert]
- alan: I think it is the easiest possible solution.,
- 22:56:59 [Bert]
- glazou: Selecting columns, is other exmaple.
- 22:57:08 [Bert]
- florian: There is a pseufo in GCPM for that.
- 22:57:28 [Bert]
- ted: [missed]
- 22:57:43 [Bert]
- vincent: Can already have collission with current single :before pseduo.
- 22:58:40 [Bert]
- steve: The comments on columns are relevant: consider replacing style on a group or on individual parts of he group.
- 22:58:56 [Bert]
- ted: Descendant of the :before?
- 22:59:12 [Bert]
- steve: :before is then a shorthand for the whole collection.
- 22:59:14 [dbaron]
- Steve: ::before becomes a shorthand for the collection of all the ::before(n)
- 22:59:31 [Bert]
- alan: Other issue in spec is object model for pseudos.
- 23:01:28 [stearns]
- s/issue/section/
- 23:01:39 [Bert]
- sylvaing: drop zones, all things that a node can be, we're rewriting the DOM... pseuodes are likenode in all cases, except you cannot instantiate them.
- 23:01:54 [sylvaing]
- ...from a static markup
- 23:02:18 [Bert]
- glazou: You can access them, even if not instatiate.
- 23:02:37 [Bert]
- sylvaing: No, yu cannot currently. How attach event handlers.
- 23:02:37 [arronei_]
- we should stop this pseudo madness ::before it gets out of hand.
- 23:03:16 [Bert]
- glazou: The day we have stuff on the right hand side, don't you think people will want :hover there, too?
- 23:03:34 [Bert]
- sylvaing: Not sure what problem we're solving anymore.
- 23:03:53 [Bert]
- TabAtkins_: Problem is just with OM?
- 23:04:10 [Bert]
- sylvaing: All the things we're adding make pseudos act like elements.
- 23:04:30 [Bert]
- glazou: Yes, all specs do the same.
- 23:04:43 [Bert]
- sylvaing: So we're creating elements, except there is no DOM for them.
- 23:05:01 [Bert]
- dbaron: We're creating new structure, rather than slots into which to pour structure.
- 23:05:27 [fantasai]
- dbaron: Most other pseudos are about styling ranges of what already exists.
- 23:05:30 [Bert]
- ... The other pseduos other than :before/after are about things that already exist (first-line, first -letter, column).
- 23:05:37 [Bert]
- ... Before after make new content.
- 23:05:53 [Bert]
- ... I think before/after were a mistake.
- 23:06:30 [Bert]
- florian: Without the DOM, this solution feels incomplete.
- 23:07:02 [Bert]
- TabAtkins_: People should not expect that a pseduo can be a drop zone.
- 23:07:23 [Bert]
- glazou: We've been asked for this for 14 years.
- 23:07:33 [Bert]
- ... Our customers ask for this.
- 23:07:52 [Bert]
- ... They know what they need.
- 23:08:25 [Bert]
- plinss: Wether to have pseudo-elements is no longer a question.
- 23:08:45 [Bert]
- dbaron: But theis is a different question. What about accessibility, e.g,
- 23:09:21 [Bert]
- plinss: We had pseudos for scrollbar parts, that's why we added double colon, to make it extensible.
- 23:09:35 [Bert]
- ... We're already adding extra structure.
- 23:10:01 [Bert]
- dbaron: Separating content and prsentation. Mostof the examples here are mixing them back up.
- 23:10:26 [Bert]
- plinss: That is not black and white. Sometims tetx is presentational, somtimes images are content.
- 23:10:55 [Bert]
- dbaron: There are guidelines from i18n, a11y, etc.
- 23:11:08 [Bert]
- ... Text presented to user should not be in attribute, e.g.
- 23:11:30 [Bert]
- glazou: Wikipedia has content in attrib.
- 23:11:42 [Bert]
- ... They said it was too complex too fix.
- 23:12:18 [Bert]
- dbaron: They used that solution because the tool was available. Now it is is too difficult to fix. It wans't when that started doing it.
- 23:12:32 [Bert]
- glazou: EPUB is full of attributes with text.
- 23:12:50 [Bert]
- ... YOu *have* to render those attributes.
- 23:13:11 [Bert]
- fantasai: A simple transformation language will be a simpler way to solve this.
- 23:13:41 [Bert]
- alan: The lst use case in the draft is not about generated content.
- 23:13:53 [Bert]
- ... It creates regions by means of pseudos.
- 23:14:09 [Bert]
- vincent: I'm sensitive to accessibility argument.
- 23:14:34 [Bert]
- ... THis case doesn't have tetx in attributes.
- 23:14:50 [Bert]
- dbaron: I think the example can, and ought, to be done in other ways.
- 23:15:07 [Bert]
- ... Styleing exisitng content and making content is different.
- 23:15:20 [Bert]
- ... Here ypu are stylong, but using a tool that is creating content.
- 23:15:21 [glazou]
- glazou: a transformation language will NOT be dynamic ; if you want a batch one, I have built STTS 15 years ago and browsers did not adopt it
- 23:15:44 [Bert]
- alan: This is about redirecting content that already exist,
- 23:16:28 [Bert]
- ... Last region as aut height, so displays all content. But could use overflow regions as well. Or a diff. way to use ficed number of regions.
- 23:16:34 [jet]
- jet has joined #CSS
- 23:16:50 [Bert]
- plinss: I have no objection to creating arbitrary regions. ot sure I like this proposal, though.
- 23:16:55 [Bert]
- ... Seems hacky.
- 23:17:08 [Bert]
- Alan: It is meant to avoid having empty elts in the mark-up.
- 23:17:25 [Bert]
- plinss: Yes, agreed, but :before/after seems a hack for this.
- 23:17:47 [Bert]
- TabAtkins_: Looks hacky, but can be written differently.
- 23:18:13 [Bert]
- plinss: I think we like what it is trying to do, not how it does it.
- 23:18:37 [Bert]
- vincent. OK, but how do we go from there?
- 23:19:19 [Bert]
- plinss: I tried to write it up, never finished. I think I should go back to that and try to write it up.
- 23:19:35 [Bert]
- glazou: Antohether type of pseudo?
- 23:20:07 [Bert]
- ... We need multiple :before/after, But I udnerstand you don't want to use that for all use cases.
- 23:20:08 [vhardy_]
- s/Antohether/Another
- 23:20:39 [Bert]
- ... We decided to restrict ourselves to :before/after for immediate needs.
- 23:20:51 [Bert]
- ... Web authors are expressing need for more.
- 23:21:01 [Bert]
- plinss: I want to try and get something better,
- 23:21:35 [Bert]
- glazou: Adobe's proptotype is real fun to play with. Can do things couldn;t do before.
- 23:21:52 [Bert]
- ... It makes sense to sperate sleetcors and pseudos and extends pseudos.
- 23:22:03 [Bert]
- plinss: OK to make a WD.
- 23:22:24 [Bert]
- ... Not currently ready for FPWD though.
- 23:22:44 [Bert]
- vincent: peter, want to be co-editor?
- 23:22:46 [fantasai]
- s/OK to make a WD/OK to make an ED/
- 23:23:00 [Bert]
- plinss: Want to be involved, will see about co-editor.
- 23:23:21 [Bert]
- fantasai: Not OK with FPD, but defer to others for editor's draft,
- 23:23:41 [Bert]
- florian: Even without multiple :befreo/afetr, the rest is still useful.
- 23:24:08 [Bert]
- ... I want to work on it.
- 23:24:29 [Bert]
- [discussion about people implementing too soon]
- 23:24:51 [Bert]
- plinss: Fine as an editor's draft.
- 23:25:07 [Bert]
- fantasai: We should point out to people that we have no consensus.
- 23:25:21 [Bert]
- glazou: An editor's draft is a proposal.
- 23:25:33 [Bert]
- tantek: List issues explicitly in the document.
- 23:25:37 [Bert]
- glazou: Sure.
- 23:26:14 [Bert]
- [discussing issues that say "we don't really want this"]
- 23:26:30 [Bert]
- dbaron: Should mention a11y and i18n issues.
- 23:26:44 [Bert]
- .. And ask whether this is more power than we want in CSS.
- 23:26:52 [dbaron]
- fantasai: and the cascade issues should be mentioned.
- 23:27:07 [Bert]
- fantasai: And is should mention the trouble with cascading.
- 23:27:28 [Bert]
- RESOLVED: make editor's draft with these isseus listed.
- 23:27:41 [Bert]
- s/is should/it should/
- 23:27:55 [Bert]
- Topic: region overflow
- 23:28:57 [Rossen]
- http://lists.w3.org/Archives/Public/www-style/2012May/1197.html
- 23:29:03 [florian]
- http://lists.w3.org/Archives/Public/www-archive/2012Aug/att-0005/Overview.html
- 23:29:04 [dbaron]
- http://lists.w3.org/Archives/Public/www-archive/2012Aug/att-0005/Overview.html
- 23:29:48 [Bert]
- dbaron: When an elt has overflow,
- 23:30:03 [Bert]
- ... if it were paginated, it would break here,
- 23:30:17 [Bert]
- ... we say we make another box as a sibliong of the first box.
- 23:30:36 [Bert]
- ... That one may also be broken, until we have all content.
- 23:30:45 [Bert]
- ... With auto height, it doens't do anything.
- 23:31:02 [Bert]
- ... But if you set fixed height, you'l get multiple boxes.
- 23:31:14 [Bert]
- ... Interesting question is to style the different boxes.
- 23:31:31 [Bert]
- florian: Multicol has behavior to add columns to the side.
- 23:31:46 [Bert]
- ... At least you can see them, not always the best way to style it.
- 23:32:02 [Bert]
- ... Might instead want to add nother multicol box below it.
- 23:32:27 [Bert]
- dbaron: [lookin at example 1]
- 23:32:46 [Bert]
- ... In example 2, you can style the regions separately.
- 23:33:26 [Bert]
- ... Let's look at the examples. Inherit style from regions into the content.
- 23:33:43 [Bert]
- ... E.g.. a larger font for the first region.
- 23:34:37 [Bert]
- ... Example 4 has different :visited styles in the diff. regions.
- 23:34:48 [Bert]
- glazou: THis is uch better than @rules.
- 23:35:10 [Bert]
- steve: Which @rules?
- 23:35:16 [Bert]
- glazou: Like regions.
- 23:35:39 [Bert]
- dbaron: Which props ypu can use in the regions is a bit complicated.
- 23:35:56 [Bert]
- ... Example 5 is maybe more realistic use case.
- 23:36:04 [Bert]
- ... I added a property 'max-lines'
- 23:36:17 [Bert]
- ... You want pagination after a certain # of lines.
- 23:36:36 [Bert]
- jdaggett: What if it has height:auto?
- 23:36:58 [Bert]
- dbaron: Depends on whether height constrains more than max-lines.
- 23:37:28 [Bert]
- glazou: You can make the same argument about cascading here as with multilple psuedos.
- 23:37:42 [Bert]
- dbaron: But you can kill this with a sinlge 'overflow' property.
- 23:37:52 [Bert]
- fantasai: Thge ability to reset the whole thing is important.
- 23:38:09 [Bert]
- glazou: Both proposals have that.
- 23:38:30 [Bert]
- dbaron: I'd like to use the same name in the overflow and in the name of the pseudo.
- 23:38:31 [jdaggett]
- jdaggett: s/height:auto/height is set?/
- 23:38:38 [Bert]
- ... That's why i don't like "repeat".
- 23:38:51 [Bert]
- ... I came up with "piece" and "part"
- 23:38:58 [Bert]
- fantasai: How about "copy"?
- 23:39:05 [Bert]
- glazou: They are not copies.
- 23:39:35 [Bert]
- steve: The words don't ahave the same function in the two places.
- 23:39:59 [Bert]
- fantasai: Fragment can be both a noun and a verb :-)
- 23:40:16 [dbaron]
- dbaron: Fine to use noun in both places
- 23:40:21 [Bert]
- SteveZ: "Fragment" can, yes.
- 23:40:48 [Bert]
- alan: We can put an issue that we don't know the name yet.
- 23:41:23 [Bert]
- vincent: I think we change the name before we publicize it more, though.
- 23:41:52 [Bert]
- dbaron: prefer part over fragment, but OK with fragment.
- 23:42:13 [Bert]
- glazou: content property applies only if region exist?
- 23:42:24 [Bert]
- dbaron: Probabl 'content' doesn't apply.
- 23:42:59 [Bert]
- TabAtkins_: About stuff to the right of the pseudo-elt.
- 23:43:08 [Bert]
- ... Make the '::' a combinator?
- 23:43:33 [Bert]
- ... There are few current pseudos that you'd need to special case.
- 23:43:45 [Bert]
- ... But they already have spacial case in that they allow a single ':'
- 23:44:38 [Bert]
- fantasai: a ::before vs a::before
- 23:44:58 [Bert]
- ... if '::' becomes a combinator, then they would be the same.
- 23:45:23 [Bert]
- plinss: Or treat the whole pseudo-elt as a kind of combinator.
- 23:45:55 [Bert]
- glazou: Yes, allowing the space needs a lot of chnages to the specs.
- 23:46:00 [Bert]
- steve: rathole?
- 23:46:20 [Bert]
- vincent: 'max-line' is like 'max-width'?
- 23:46:31 [Bert]
- ... limiting the siz eand the overflow are different things.
- 23:46:54 [Bert]
- florian: Yes, it is in this spec just becaue t needs a host.
- 23:47:17 [Bert]
- dbaron: It is not processed the same way as hieht, it is processed when you detetmrine breaks.
- 23:47:48 [Bert]
- steve: yes, cannot set a height of that kind today, but we could have a height value that could do that thing.
- 23:48:07 [Bert]
- ted: 'min-lines'?
- 23:48:26 [Bert]
- dbaron: Why would you want that?
- 23:49:16 [Bert]
- steve: problem with givinbg height a value in lines maybe that it depends on layout?
- 23:49:34 [Bert]
- dbaron: A little scaed, but it might work...
- 23:49:50 [Bert]
- plinss: And 'max-width: 3lines'?
- 23:50:05 [Bert]
- TabAtkins_: Would be meaningless in horizontal writing modes.
- 23:50:41 [Bert]
- plinss: having a unit I like, but scary.
- 23:51:09 [Bert]
- fantasai: Pseudo element is notmally a piece of an element, and properties on it win over the propertie son the elt itself.
- 23:51:53 [Bert]
- ... 'foo#f1' is more specific than 'foo:nth-region' and so shouldn't it win?
- 23:52:11 [Bert]
- steve: Did we have a similar issue with [??]
- 23:52:34 [Bert]
- dbaron: I want some specificity for these, same as pseduo-class, maybe.
- 23:52:44 [lstorset]
- s/??/region styling
- 23:53:20 [Bert]
- florian: Other issue is related to multicol, does this apply to columns?
- 23:53:34 [Bert]
- dbaron: I think nth-region applies to columns.
- 23:53:47 [Bert]
- ... It would apply anywhere where you do breaking.
- 23:54:22 [Bert]
- ... No, actually, it would not be put on the multicol element itself
- 23:54:45 [Bert]
- plinss: Doesn't matter why something breaks.
- 23:55:05 [Bert]
- rossen: Any restriction son what it applies to? CAn break anything?
- 23:55:15 [Bert]
- dbaron: table parts may be problemtatic.
- 23:55:41 [Bert]
- rossen: Create extra table cells... create extra rows... awkward.
- 23:55:54 [Bert]
- fantasai: "you get what you asked for"? :-)
- 23:56:10 [Bert]
- Rossen: At least somethign to consider.
- 23:56:27 [Bert]
- dbaron: People suggested this should become an overflow module.
- 23:56:42 [Bert]
- ... overflow-x/y in this context also need to be specified.
- 23:57:08 [Bert]
- florian: Yes, thet interact poorly currently,
- 23:57:27 [fantasai]
- fantasai: good reason to address them all together in the same place
- 23:57:37 [Bert]
- alan: does 'break-before' apply?
- 23:58:07 [Bert]
- steve: 'break: always (or 'all') would do it.
- 23:58:38 [Bert]
- florian: Does 'break-*: region' apply?
- 23:59:00 [Bert]
- ... I think I'm OK with using the same keyword.
- 23:59:16 [Bert]
- steve: Example is multiple coliumns, which contain regions.
- 00:00:21 [Bert]
- glazou: we have several proposals for nth-*. So I think nth-pseudo(type) is better.
- 00:00:41 [Bert]
- dbaron: Do't think the word "pseudo" should be in the name.
- 00:01:00 [Bert]
- glazou: We can glue all proposals together.
- 00:01:30 [arronei_]
- I agree with dbaron I don't think "pseudo" should be in the name either
- 00:01:35 [Bert]
- fantasai: But what does it gain us? The name of the thing you take the nth off has to be there anyway.
- 00:02:12 [Bert]
- dbaron: I'm remnded of first gradient proposal, with different arguments diepending on type argument.
- 00:02:56 [Bert]
- [discussion confused about whether it is about the word "pseudo" or about the concept of "nth" with a param]
- 00:03:39 [Bert]
- steve: it's the same thing every time: the nth of a type.
- 00:03:50 [Bert]
- florian: Not exactly the same meaingin on all cases.
- 00:04:14 [Bert]
- fantasai: but you can put the type after a dash, why put it in parenthees?
- 00:04:49 [jet]
- jet has joined #CSS
- 00:05:41 [Bert]
- steve: gradients had differtnet params in different types. This is just one param.
- 00:06:09 [Bert]
- Tab: YEs, but for future extensions safer to prevent psssibility of different params.
- 00:06:32 [Bert]
- florian: nth-region is also shorter, that's enough of a reason.
- 00:07:23 [Bert]
- plinss: *:before:nth(3)
- 00:07:47 [Bert]
- ... ::before:hover
- 00:08:18 [Bert]
- ... Why invent a mechanism. We already have pseudo-classes.
- 00:09:37 [Bert]
- glazou: ::first-letter is ::letter:nth(1) ?
- 00:09:50 [Bert]
- steve: Cannot necessarily apply it to everything.
- 00:10:08 [Bert]
- plinss: :first-line would just be an alias.
- 00:10:41 [Bert]
- dbaron: Boustrophedon: ::lines(2n+1)
- 00:10:59 [Bert]
- s/dbaron: Boustrophedon: ::lines(2n+1)//
- 00:11:22 [plinss]
- actually that should be ::line:nth(2n+1)
- 00:12:34 [Bert]
- florian: You cannot apply 'overflow' to the pseudo, dbaron said, but I think it u=is useful to apply it to the last region.
- 00:12:42 [Bert]
- dbaron: Can set height: auto.
- 00:12:50 [Bert]
- florian: Not quite he same thing.
- 00:13:05 [Bert]
- dbaron: My worry is about the first fragment.
- 00:13:20 [Bert]
- ... You only use the fragment styles *if* the elt id fragmented.
- 00:13:43 [Bert]
- ... If you turn off overflow on the first fragment, suddently you don't have overflow anymore...
- 00:14:08 [Bert]
- TabAtkins_: Or don't start counting until the second fragment.
- 00:14:34 [Bert]
- dbaron: Doubles the cost of selector matching.
- 00:15:01 [Bert]
- ... So either don't matche sleectors unless you have the special overflow value, or
- 00:15:16 [Bert]
- ... don't apply frgament styles until ypu reach the second.
- 00:15:59 [Bert]
- plinss: 'overflow: fragment' and it doesn't create fragments, do the properties apply?
- 00:16:28 [Bert]
- ... As soon as you set 'overflow: fragment' all styles apply, whether or not you have more than one fragment.
- 00:17:04 [Bert]
- ... All of the boxes of an elt are considered fragments, if it fragments for any reason.
- 00:17:23 [Bert]
- dbaron: That was not how is speced it.
- 00:17:44 [Bert]
- ... Mine was only if you also specify 'overflow: fragment'
- 00:18:03 [Bert]
- fantasai: Say you want a fragment of a given height.
- 00:18:17 [Bert]
- ... [draws on white board]
- 00:18:56 [Bert]
- ... and now imagine I wan borders on all fragments.
- 00:19:22 [Bert]
- dbaron: I had to write extra style rules for paginated mode.
- 00:19:48 [dbaron]
- s/extra style rules/fancier selectors, like :nth-region(n+2)/
- 00:20:17 [Bert]
- fantasai: A fragment that is itself broken over two pages do not increase the number of fragments as seen by the pseudo-elt selector.
- 00:20:52 [Bert]
- plinss: Same issue in multicol.
- 00:22:27 [Bert]
- steve: If a multicol element overflows in a paged environment, where does the next column go?
- 00:23:06 [Bert]
- fantasai: If you have fied height on the multicol elt, the overflow will be on the side and will just be cut off if you print the page.
- 00:23:12 [Bert]
- s/fiex/fixed/
- 00:23:25 [Bert]
- steve: Now I set 'overflow: fragment'
- 00:23:38 [Bert]
- florian: It should act the same.
- 00:24:17 [Bert]
- ... Current wordking in multicol and in this proposal doesn't do that, but it should.
- 00:26:36 [Bert]
- ... Current does work if
- 00:26:57 [vhardy__]
- vhardy__ has joined #css
- 00:26:58 [Bert]
- ... elt has 'columns' and 'overflow fragment'
- 00:27:40 [Bert]
- ... I think the 'overflow-style: paged-*' should be pulled into this spec, too.
- 00:28:26 [Bert]
- ... you can style the pages, but more limited; cannot position them, e.g.
- 00:28:52 [Bert]
- dbaron: Some thing you might want to apply to paginated overflow do not make sense here.
- 00:29:07 [Bert]
- ... E.g., scroll two pages at once.
- 00:29:33 [Bert]
- plinss: When you print, does it degrade well?
- 00:29:46 [Bert]
- fantasai: Stack of pages?
- 00:30:11 [Bert]
- dbaron: 'overflow:scroll' not defined for print either.
- 00:30:23 [Bert]
- plinss: Dynamic presentation vs static presentation.
- 00:30:37 [Bert]
- ... Define how it degrades. Common model.
- 00:31:14 [Bert]
- fantasai: One example of overflow 'paged' when printed [draws picture],
- 00:31:32 [Bert]
- ... inside page and outside page.
- 00:31:54 [Bert]
- SteveZ: Better done with media queries?
- 00:32:06 [Bert]
- dbaron: *If* the author provides media queries, yes.
- 00:32:30 [dbaron]
- dbaron (before SteveZ): but what if the inside page is bigger than the outside page? and how to tell which content gets repeated around the inside pages and which goes on outside pages before/after them?
- 00:32:37 [Bert]
- plinss: If you haven't anticipated a certain environment, it shoudl still behave reasonably.
- 00:33:07 [Bert]
- ... browsers should do something rational even if autghor didn't provide media query.
- 00:33:23 [Bert]
- steve: This is auto-generation for a single stream.
- 00:33:34 [Bert]
- ... Doens't handle merging two streams.
- 00:33:41 [Bert]
- ... Page templates are about that.
- 00:33:52 [Bert]
- ... They do this, but do other things as well.
- 00:34:22 [Bert]
- ... They allow to select the next contained based on what content to position.
- 00:34:34 [Bert]
- ... So this doesn't replace page templates.
- 00:34:47 [Bert]
- florian: I think alan convinced me of that.
- 00:35:25 [Bert]
- alan: region chain, with different sizes: probably need to replicate quite a bit of the behavior of that from the regions spec to here.
- 00:35:35 [Bert]
- dbaron: I thought fragmentation spec would do that.
- 00:35:38 [Bert]
- fantasai: doesn
- 00:35:52 [Bert]
- ..' t cover everythinh.
- 00:36:24 [fantasai]
- fantasai: Fragmentation covers how you break the flow across fragmentainers. Doesn't say how you size them.
- 00:36:41 [Bert]
- alan: e.g., two regions in the same row, and one region has a forced break.
- 00:37:34 [Bert]
- vincent: first pass to figure out what goes into the bxoes. Maybe smaller font size in one region means more content goes into that. Need to work out recursive dependencies.
- 00:37:48 [Bert]
- ... Either dependencies or allow gaps.
- 00:38:34 [Bert]
- ... No need to resolve all that now. Just keep it in mind.
- 00:39:45 [Bert]
- Rossen: Dbaron, are certain properties going to be restricted to regions? Passing styles down from region to content is tricky. Restricting the set of properties makes it easier.
- 00:40:18 [Bert]
- dbaron: The set of properties is restricted. More restricted in what applies to content than what applies to the region itself.
- 00:41:08 [Bert]
- florian: Say we have a flexbox for first few elements and than the overflow is displayed differently.
- 00:41:23 [Bert]
- s/elements/fragments/
- 00:41:48 [fantasai]
- fantasai^: Maybe want to change display-outside, but don't think so for display-inside
- 00:42:27 [Bert]
- vincent: difficult to implement when size depends on content, e.g., when diff. font size in diff. regions. Need 2nd pass.
- 00:42:56 [Bert]
- ... I don't remember all the cases, but there were interferences.
- 00:43:11 [Bert]
- ... It seems the same applies to 'overflow: fragment'
- 00:43:51 [Bert]
- florian: Can we discuss 'overflow-x/y' and why it is a problem in combination with this?
- 00:44:43 [vhardy_]
- vhardy_ has joined #css
- 00:44:54 [Bert]
- ... We implemented to ignore overflow-x if o- says 'paged-*' and vice-versa.
- 00:45:22 [Bert]
- Bert: I tried to overflow-x/y up and never managed to, for much the same reasons.
- 00:45:33 [Bert]
- dbaron: We had a discussion maybe 8 or 9 years ago.
- 00:45:51 [Bert]
- ... We concluded that all combinations mixed, except 'visible'
- 00:46:33 [Bert]
- rossen: I think we had it speced, and IE9 implemented taht, I think.
- 00:47:22 [Bert]
- florian: overflow is a shothand, one question is what the longhand is for some of the values.
- 00:48:44 [Bert]
- ... I may want to overflow pages only in vertical direction.
- 00:49:37 [Bert]
- Rossen: I remember lookkng at some code for marquee with that question.
- 00:49:37 [fantasai]
- florian: I think we should make overflow-x/overflow-y be logical so -y is always in block direction and fragment etc. only apply in y direction
- 00:49:49 [fantasai]
- fantasai: Should we make background-repeat: repeat-x/y match that, then?
- 00:50:03 [molly]
- molly has joined #css
- 00:50:26 [Bert]
- florian: And then add writing modes... it just doesn't make sense.
- 00:50:43 [Bert]
- ... I think there is a link saying all that somwhere.
- 00:50:45 [fantasai]
- florian^: overflow-x/y is really messed up
- 00:50:58 [florian]
- http://lists.w3.org/Archives/Public/www-style/2012May/1197.html
- 00:51:44 [Bert]
- florian: When we have reworked overflow, we don't actually need 'overflow-style' anymore.
- 00:52:25 [Bert]
- tantek: We worked it all out and the result made less sense with logical directions, at least in UIs.
- 00:52:44 [Bert]
- florian: Some edge cases are not elegant.
- 00:53:02 [Bert]
- tantek: Edge cases are often not elegant.
- 00:53:50 [Bert]
- florian: We had to do strange things with overflow-x/y outsidee the cascade.
- 00:54:02 [Bert]
- .. So I'd like to see if we can't make something better.
- 00:54:11 [Bert]
- s/.. /... /
- 00:55:00 [Bert]
- tantek: The simpel answer is if you set 'paged' on one, then the other is lso paged.
- 00:55:09 [fantasai]
- florian: If you put overflow-x: paged; overflow-y: fragment; what happens?
- 00:55:36 [Bert]
- Rossen: We did what most other did. Visible trumped all.
- 00:55:43 [fantasai]
- no, that's wrong
- 00:55:43 [Bert]
- dbaron: We do 'hidden'
- 00:55:57 [Bert]
- Rossen: Have to figure out which one wins.
- 00:55:58 [fantasai]
- Rosen: if either was not-visible, visible became set to 'auto'
- 00:56:31 [Bert]
- ... With fragmentation added, specs needs to call it out.
- 00:56:32 [fantasai]
- dbaron: we turn some values into hidden, and others into auto
- 00:56:36 [Zakim]
- Zakim has left #css
- 00:56:45 [Bert]
- dbaron: We turn some into hidden and some into auto.
- 00:57:09 [Bert]
- rossen: We did some analysis and most implementations were similar.
- 00:57:44 [Bert]
- ... It makes sense to have 'visible' in one direction and hidden in the other and that shouldn't turn into auto.
- 00:57:57 [dbaron]
- really we're just turning visible into auto
- 00:58:06 [dbaron]
- we're turning the pre-2004 overflow:hidden into hidden
- 00:58:09 [Bert]
- dbaron: Essentially wer are turning 'visible' into 'auto'.
- 00:58:56 [Bert]
- florian: The (prefixed) marquee in webkit doesn't use overflow-style, but overflow.
- 00:59:56 [Bert]
- ... if that is the only implementation, as it seems to be, maybe we can forget what the marquee spec said and redefine overflow.
- 01:00:43 [Bert]
- fantasai: Maybe the value in the block direction should always win?
- 01:01:06 [Bert]
- dbaron: That's reasonable, but we do something different for 'visible' currently.
- 01:01:44 [Bert]
- florian: It is not exactly that. Example: [draws]
- 01:02:42 [fantasai]
- Vincent asks about what we do with dbaron's draft
- 01:02:42 [Bert]
- vincent: did we agree to publish dbaron's draft?
- 01:03:02 [Bert]
- dbaron: Yes,as editor's draft. I want to name it css3-overflow.
- 01:03:12 [Bert]
- florian: [drawing]
- 01:03:56 [Bert]
- ... last line on page has an image sticking out below. In paged mode, that overflow is just hidden.
- 01:04:18 [Bert]
- fantasai: We add pages for abs pos elements.
- 01:04:29 [fantasai]
- fantasai: you have to; some websites abspos the entire thing
- 01:04:33 [fantasai]
- s/thing/page
- 01:04:36 [Bert]
- Rossen: The exception in our implementation is with mixed directions.
- 01:05:00 [Bert]
- ... Fragment in orthogonal diretcion, to not lose any content.
- 01:05:18 [dbaron]
- fantasai, does the fragmentation spec say how to place absolutely positioned elements (esp. those that use static-position or those that are relative-to-bottom)?
- 01:06:20 [Bert]
- fantasai: [draws page with long text sticking out on the left]
- 01:06:38 [glazou]
- <br until="tomorrow **9am**" />
- 01:06:40 [Bert]
- ... We automatically trigger multicol to display that overflowng text.
- 01:08:32 [Bert]
- [end of meeting]
- 01:47:27 [vhardy_]
- vhardy_ has joined #css
- 02:03:53 [cabanier]
- cabanier has joined #css
- 02:10:07 [Liam]
- Liam has joined #css
- 02:12:59 [cabanier1]
- cabanier1 has joined #css
- 02:37:58 [arronei_]
- arronei_ has joined #css
- 02:45:11 [isherman]
- isherman has joined #css
- 03:20:33 [tantek]
- tantek has joined #css
- 03:58:21 [krit]
- krit has joined #css
- 04:14:03 [shepazu]
- shepazu has joined #css
- 05:25:22 [tantek]
- tantek has joined #css
- 05:27:47 [tantek]
- tantek has joined #css
- 05:55:14 [glazou]
- glazou has joined #css
- 06:07:30 [Koji]
- Koji has joined #css
- 06:12:16 [florian]
- florian has joined #css
- 06:23:00 [drublic]
- drublic has joined #css
- 06:42:05 [tantek]
- tantek has joined #css
- 06:46:55 [arronei_]
- arronei_ has joined #css
- 06:52:01 [cabanier]
- cabanier has joined #css
- 07:08:24 [Ms2ger]
- Ms2ger has joined #css
- 08:41:05 [drublic]
- drublic has joined #css
- 08:43:28 [SimonSapin]
- SimonSapin has joined #css
- 08:59:52 [drublic_]
- drublic_ has joined #css
- 09:02:28 [drublic]
- drublic has joined #css
- 09:49:27 [drublic]
- drublic has joined #css
- 11:24:26 [decadance]
- decadance has joined #css
- 11:31:31 [jet]
- jet has joined #CSS
- 12:02:48 [jet]
- jet has joined #CSS
- 12:27:10 [jet]
- jet has joined #CSS
- 12:46:37 [myakura]
- myakura has joined #css
- 12:52:45 [jet]
- jet has joined #CSS
- 12:54:34 [drublic_]
- drublic_ has joined #css
- 12:54:50 [leaverou]
- leaverou has joined #css
- 13:03:21 [drublic]
- drublic has joined #css
- 13:20:53 [leaverou]
- leaverou has joined #css
- 13:42:52 [jet]
- jet has joined #CSS
- 13:57:48 [leaverou]
- leaverou has joined #css
- 14:00:45 [jet]
- jet has joined #CSS
- 14:05:12 [jet]
- jet has joined #CSS
- 14:06:25 [ksweeney]
- ksweeney has joined #css
- 14:06:54 [ksweeney]
- ksweeney has left #css
- 14:08:19 [shepazu]
- shepazu has joined #css
- 14:26:17 [leaverou]
- leaverou has joined #css
- 14:55:25 [jet]
- jet has joined #CSS
- 15:23:47 [arronei_]
- arronei_ has joined #css
- 15:35:44 [tantek]
- tantek has joined #css
- 15:44:57 [glenn]
- glenn has joined #css
- 15:47:21 [glazou]
- glazou has joined #css
- 15:47:57 [glazou]
- rrsagent, this meeting spans midnight
- 15:48:37 [Rossen]
- Rossen has joined #css
- 15:50:08 [dbaron]
- dbaron has joined #css
- 15:50:17 [florian]
- florian has joined #css
- 15:51:30 [lstorset]
- lstorset has joined #css
- 15:59:55 [TabAtkins_]
- TabAtkins_ has joined #css
- 16:00:22 [Molly]
- Molly has joined #css
- 16:03:36 [Rossen]
- Rossen has joined #css
- 16:04:28 [SteveZ]
- SteveZ has joined #css
- 16:04:47 [cabanier]
- cabanier has joined #css
- 16:07:18 [TabAtkins_]
- ScribeNick: TabAtkins_
- 16:07:27 [TabAtkins_]
- Topic: Future meetings
- 16:07:42 [TabAtkins_]
- dbaron: TPAc is this year, but I think that's all sorted out.
- 16:07:57 [TabAtkins_]
- szilles: Money commitments are there, room hasn't been arranged yet.
- 16:08:05 [TabAtkins_]
- szilles: This is August, it's France, need I say more?
- 16:08:31 [TabAtkins_]
- dbaron: We've agreed on months and locations for the next two meetings, but not dates yet, and we dont' ahve a location for the third meeting.
- 16:09:18 [TabAtkins_]
- Molly: Since you decided Feb for the first meeting, Tucson has some big meetings in the middle of Feb which will cause hotel problems.
- 16:09:28 [TabAtkins_]
- Molly: How flexible are you about the date?
- 16:09:55 [TabAtkins_]
- Molly: I'll figure out in the next week what the best dates will be, and give you a few choices.
- 16:10:36 [TabAtkins_]
- sylvaing: Early March is fine, but late March is SXSW.
- 16:10:40 [TabAtkins_]
- glazou: I cant' do early march.
- 16:10:52 [TabAtkins_]
- szilles: Mar 16-23 is no good for me.
- 16:11:18 [TabAtkins_]
- florian: end of feb or early march is the best for me.
- 16:11:34 [TabAtkins_]
- Molly: I feel that the early Feb is probably the danger zone.
- 16:11:59 [TabAtkins_]
- Molly: I'm going to look at the week starting Feb 4 or 6.
- 16:12:11 [TabAtkins_]
- szilles: The Gem Show is the 14-17.
- 16:12:19 [TabAtkins_]
- Molly: The week before is when the wholesalers are around.
- 16:14:01 [TabAtkins_]
- Molly: People are possibly okay with Sundays, yes?
- 16:14:09 [TabAtkins_]
- [several]: Yeah, that's fine.
- 16:14:09 [sylvaing]
- SxSW is 3/8-3/17 so Interactive should be 3/8-3/11
- 16:14:17 [TabAtkins_]
- dbaron: So, we said we'd meet in Japan in May.
- 16:14:28 [TabAtkins_]
- dbaron: Since then, the AC meeting was announced as June 9-11 in Japan.
- 16:14:36 [tantek]
- tantek has joined #css
- 16:14:46 [TabAtkins_]
- dbaron: So, for the three or four of us going to that, it would be awfully convenient to make just one trip there.
- 16:15:04 [TabAtkins_]
- dbaron: The previous week works fine for me.
- 16:16:23 [TabAtkins_]
- jdaggett: The SVGWG said they wanted to colocate in Japan, so if that happens, we may need to use the Google office, because the Moz office won't take that many people.
- 16:17:24 [Koji]
- Koji has joined #css
- 16:17:34 [TabAtkins_]
- florian: For the third meeting, perhaps Europe.
- 16:17:56 [TabAtkins_]
- florian: I can't speak for Opera at that point, but we can see.
- 16:18:16 [TabAtkins_]
- TabAtkins_: I can see what G might be able to do in Europe, too.
- 16:18:45 [TabAtkins_]
- dbaron: We may be able to do London or Paris, as well. Depends on when the construction is done.
- 16:19:31 [TabAtkins_]
- jdaggett: I think we should wait to do dates for when Hakon is here, as he often has fall commitments.
- 16:20:08 [TabAtkins_]
- [discussion about being too close to TPAC, maybe hit late August or early Sep]
- 16:21:07 [TabAtkins_]
- glazou: I have a conflict in all of August.
- 16:23:35 [TabAtkins_]
- Topic: CSSOM
- 16:24:01 [TabAtkins_]
- glenn: Update on editting work...
- 16:24:14 [TabAtkins_]
- glenn: I transitioned the format to a preprocessor which I use to generate the docs from IDL.
- 16:24:27 [TabAtkins_]
- glenn: So I'm starting to work through the buglist and some of the new items appearnign on the mailing list.
- 16:24:47 [TabAtkins_]
- glenn: My current goal is to process all the bugs and get the material in place that would allow us to go to a new WD by the end of this month.
- 16:24:56 [TabAtkins_]
- glenn: For the items that people asked to discuss here...
- 16:25:23 [TabAtkins_]
- glenn: There was a questioan bout what cssText should return for various rules, such as the contents of a @media rule.
- 16:25:30 [TabAtkins_]
- glenn: Should it be pretty-printed or not?
- 16:25:49 [TabAtkins_]
- florian: Right now, all impls break lines and indent things inside of @media.
- 16:25:54 [glenn]
- http://hg.csswg.org/test/file/tip/contributors/gadams/incoming/cssom
- 16:26:05 [TabAtkins_]
- glenn: One thing I'm doing is a link of incoming tests.
- 16:26:24 [TabAtkins_]
- glenn: There are about 130 tests right nwo, and I'm actively expanding those to cover all the interfaces.
- 16:26:38 [TabAtkins_]
- glenn: I'll put one in to test the media behavior you're describing.
- 16:27:09 [TabAtkins_]
- florian: Though, now that we're getting nested @media, the indentation is not interop.
- 16:27:51 [TabAtkins_]
- florian: Opera does proper increasing indentation, but Firefox doesn't - they're all 2-space in.
- 16:28:08 [TabAtkins_]
- florian: Unfortunately, authors depend on silly details of the serialization, so interop is often important here.
- 16:28:28 [TabAtkins_]
- jdaggett: I'm going on the assumption that I can collapse all whitespace, and things should serialize the same way (in @font-face).
- 16:28:58 [TabAtkins_]
- jdaggett: So I'm not sure one particular type of whitespace is better than another.
- 16:29:19 [TabAtkins_]
- florian: I don't care much about *what* type of formatting is used, I just care about something being in the spec so we can do it all the same.
- 16:30:16 [TabAtkins_]
- glenn: Will we have exceptions for certain rules, or will this be a generic rule for all the parts of CSS?
- 16:30:23 [TabAtkins_]
- florian: Not sure. It seems easy enough to be consistent, though.
- 16:30:47 [TabAtkins_]
- glenn: Yesterday we were takling about preserving whtiespace and comments in @supports.
- 16:31:09 [TabAtkins_]
- glenn: in the case of an inline style, should we preserve what they do in that case, and pretty-print other places?
- 16:31:24 [miketaylr]
- miketaylr has joined #css
- 16:31:38 [TabAtkins_]
- florian: I think we should only do exact preservation in @supports condition, and just reserialize otherwise.
- 16:31:44 [jdaggett]
- jdaggett has joined #css
- 16:32:00 [Molly]
- q+
- 16:32:03 [TabAtkins_]
- florian: One nuance - when you serialize a single rule, some end it with a semicolon, while others end with a semicolon-space.
- 16:33:00 [TabAtkins_]
- jdaggett: If you have a font-family name that's unquote and has an escape in the second part of the name, webkit returns a quoted version. It's not identical, but it round-trips.
- 16:33:38 [Zakim]
- Zakim has joined #css
- 16:33:52 [TabAtkins_]
- florian: It'll take time to nail down the exact details, but I think we can put together good general rules for all of these.
- 16:34:47 [TabAtkins_]
- jdaggett: For testing, I want the opposite - I want to test "does this parse?" and I get that by looking at the string.
- 16:35:12 [TabAtkins_]
- glazou: Testing is not a target for CSS.
- 16:35:47 [TabAtkins_]
- Molly: If there are differences, it makes it hard for developers to deal with it, because they have more to learn and memorize. Better to have things be consistent.
- 16:37:05 [TabAtkins_]
- florian: Opera also does the indentation on @keyframes.
- 16:37:50 [TabAtkins_]
- florian: When you nest things, Opera right now does correct pretty-printing. I'd like to either agree on that or not do it at all, so we're all together.
- 16:38:25 [TabAtkins_]
- florian: Our policy seems to be that at-rules that contain rules are indented, while ones that contain descriptors are not.
- 16:39:10 [TabAtkins_]
- glazou: What about groups of selectors? Many authors put newlines after commas in selectors.
- 16:39:20 [TabAtkins_]
- florian: No one does anything like that for now - selectors are just on one page.
- 16:39:32 [vhardy_]
- vhardy_ has joined #css
- 16:39:41 [hober]
- http://clhs.lisp.se/Body/v_pr_rda.htm
- 16:40:06 [vhardy__]
- vhardy__ has joined #css
- 16:41:02 [TabAtkins_]
- glazou: Is it naive to ask for a pretty-printer built in natively?
- 16:41:08 [TabAtkins_]
- [some discussion about it]
- 16:41:42 [TabAtkins_]
- florian: We could just let libraries deal with that for now, and always add it in natively if it seems necessary later.
- 16:41:58 [TabAtkins_]
- dbaron: I don't think it's really necessary at all. This is not something that's commonly used.
- 16:42:21 [TabAtkins_]
- glazou: Would you be okay with me and Florian investigating how to serialize rules across CSS?
- 16:42:43 [TabAtkins_]
- dbaron: I'm okay with that, with the caveat that the harder part is serializing CSS values, which is a separate topic.
- 16:44:16 [TabAtkins_]
- glenn: I hope to finish the value stuff this week.
- 16:44:33 [TabAtkins_]
- glazou: One thing I noticed that is missing a cssText is the Stylesheet object. We should fix that.
- 16:44:53 [TabAtkins_]
- dbaron: One thing I noticed is that some things are noted as not readonly in the OM, but they're readonly in practice.
- 16:45:14 [TabAtkins_]
- s/some things/some cssText attributes/
- 16:45:40 [TabAtkins_]
- dbaron: Every once in a while, someone will submit a webkit patch making one of their setters work.
- 16:46:17 [TabAtkins_]
- florian: Do you know why they might have been made readonly?
- 16:46:46 [TabAtkins_]
- dbaron: A combination of just not bothering to do it, or assuming that the spec meant to make things readonly.
- 16:48:00 [TabAtkins_]
- glenn: Do you have any places where you think it should be readonly?
- 16:48:26 [TabAtkins_]
- dbaron: For example, on @media - do authors really want to do this?
- 16:49:53 [TabAtkins_]
- TabAtkins_: I think that it's about as useful as innerHTML, which is allowed everywhere.
- 16:50:18 [TabAtkins_]
- dbaron: Looks like Firefox only makes it mutable in *one* instance - on CSSStyleDeclaration that doesn't come from getComputedStyle.
- 16:50:40 [dbaron]
- dbaron: what happens when you set mediaRule.cssText = "@keyframes foo { ... }" ???
- 16:51:03 [dbaron]
- dbaron: The spec needs more than the lack of the word "readonly" for this to be implementable.
- 16:51:36 [TabAtkins_]
- glenn: So I don't think I have any other open issues. If I have any questions, I'll bring them up to the group.
- 16:53:55 [TabAtkins_]
- Topic: global CSS object
- 16:54:00 [TabAtkins_]
- glazou: Any issues with that?
- 16:54:52 [TabAtkins_]
- TabAtkins_: The last day of discussion in webapps hasn't brought up any problems, and people seem positive. Sounds good - we can deal with any changes that prove necessary if problems come up later.
- 16:55:10 [TabAtkins_]
- Topic: @font-face OM definition
- 16:56:09 [TabAtkins_]
- glenn: Since John is doing @font-face in Fonts, should I remove those definitions from CSSOM?
- 16:56:41 [TabAtkins_]
- jdaggett: I didn't redefined @font-face, I just added @font-features
- 16:57:09 [TabAtkins_]
- glenn: Okay, my mistake. So should I add some guidance about defining new at-rules in OM?
- 16:57:14 [TabAtkins_]
- [several]: YES
- 16:58:16 [TabAtkins_]
- glenn: What about coordinating the constants for new rule types?
- 16:58:47 [TabAtkins_]
- TabAtkins_: There's a wiki page about that on the csswg wiki, under Planning.
- 16:58:57 [TabAtkins_]
- glenn: Would you mind an informative note pointing to that page?
- 16:59:00 [TabAtkins_]
- TabAtkins_: No, that's great.
- 16:59:03 [TabAtkins_]
- Topic: Regions.
- 16:59:13 [TabAtkins_]
- stearns: We've been going through feedback on Regions.
- 16:59:26 [TabAtkins_]
- stearns: The feedback on the OM has been very useful. The ED has gone through a lot of revisions.
- 16:59:38 [TabAtkins_]
- stearns: So I'd like to publish a new WD to reflect those updates.
- 16:59:50 [TabAtkins_]
- RESOLVED: Publish a new WD of Regions.
- 17:00:34 [TabAtkins_]
- florian: One thing about regions...
- 17:01:14 [TabAtkins_]
- florian: We did @region because we didn't want to put things after the pseudo-element. Should we change this now, given that we're changing on that aspect?
- 17:01:21 [TabAtkins_]
- jdaggett: Perhaps an issue in the spec about it.
- 17:01:45 [TabAtkins_]
- stearns: We have somep atches in WebKit already about region styling.
- 17:01:59 [TabAtkins_]
- stearns: If we get to the point where we're able to chain pseudo-element syntax, we're willing to change that.
- 17:02:22 [TabAtkins_]
- stearns: But I'd like to have that shake out before I make changes to the spec.
- 17:02:33 [TabAtkins_]
- stearns: But I'll add an issue on the @region syntax if there isn't already one.
- 17:03:09 [TabAtkins_]
- Topic: Exclusions
- 17:03:23 [TabAtkins_]
- Rossen: We've made a lot of editorial changes to the spec, such as updating a lot of images.
- 17:03:34 [Rossen]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=15183
- 17:03:40 [TabAtkins_]
- Rossen: One discussion we tried to revive was "Issue 1" in the spec, which was put in by dbaron.
- 17:03:48 [TabAtkins_]
- Rossen: [reads the issue]
- 17:05:52 [TabAtkins_]
- Rossen: The processing model of exclusions - nowhere do we actually insist on building the positioning scheme of exclusions on top of abspos, but we don't forbid it either.
- 17:06:01 [TabAtkins_]
- Rossen: So if you want to do abspos exclusions, you're allowed to.
- 17:06:20 [TabAtkins_]
- Rossen: I don't see any reason to make an exception here and disallow one type of positioning.
- 17:06:49 [TabAtkins_]
- Rossen: I'd like to show a demo of exclusions used in grid, with no abspos.
- 17:08:19 [TabAtkins_]
- Rossen: [shows demo]
- 17:10:20 [krit]
- krit has joined #css
- 17:12:05 [arronei_]
- arronei_ has joined #css
- 17:13:48 [glazou]
- florian, don't play your Håkon :-) http://images.canberratimes.com.au/2012/02/15/3039529/aw-Hakon-20Wium-20Lie-20_20120215121710238149-420x0.jpg
- 17:14:00 [TabAtkins_]
- dbaron: I'd like to explain why this demo doesnt' work well.
- 17:14:17 [TabAtkins_]
- dbaron: First, unless you explicitly handle paging, you'll have to scroll up and down for these multicol things.
- 17:15:46 [TabAtkins_]
- dbaron: Now, if you produce more content, how is this exclusion paginated?
- 17:16:01 [TabAtkins_]
- TabAtkins_: I'ts just put in a cell in the grid, so that depends on how grids are paginated.
- 17:16:24 [TabAtkins_]
- stearns: If it's in a "page grid", it might be on every page. If it's on an element grid, it's wherever it appears in the paginated content.
- 17:17:07 [TabAtkins_]
- Rossen: These questions seem to be about page templates in general, not about exclusions at all.
- 17:17:32 [florian]
- q+
- 17:17:42 [florian]
- florian has left #css
- 17:17:45 [florian]
- florian has joined #css
- 17:17:49 [florian]
- q+
- 17:19:14 [TabAtkins_]
- Rossen: The placement of exclusions is driven by the templating system.
- 17:19:32 [TabAtkins_]
- Rossen: Like a bunch of grids that are placed one after the other for content that flows through them.
- 17:20:28 [TabAtkins_]
- Rossen: It could be determined by the author or the app - the author coul dhave pull quotes that want to be displayed as exclusions, or the host could insert an ad as an exlucions.
- 17:20:37 [TabAtkins_]
- szilles: I don't see a connection between what's being said here.
- 17:20:51 [TabAtkins_]
- szilles: David is seeing a document with a bunch of static declarations putting things in various places.
- 17:20:55 [stearns]
- q+
- 17:21:12 [TabAtkins_]
- szilles: He's wondering where these should go as pages vary or disappear entirely.
- 17:21:35 [TabAtkins_]
- szilles: But you seem to have a different model - an app, possibly with JS, which takes the ocntent and builds the pages on the fly to build the environment they go into.
- 17:21:59 [TabAtkins_]
- szilles: So I can say "this figure goes with this text", and the app will see this and can make choices about where to put things in the template.
- 17:22:05 [glazou]
- Zakim, ack florian
- 17:22:05 [Zakim]
- I see stearns on the speaker queue
- 17:22:10 [TabAtkins_]
- florian: Yes, this seems to be the difference in approach.
- 17:22:18 [TabAtkins_]
- florian: We want to allow JS, but not rely on it.
- 17:22:21 [TabAtkins_]
- florian: So if that's th emodel, that's a problem.
- 17:22:39 [TabAtkins_]
- florian: However, I think we can easily agree that exclusions as we currently have them (simple floats) are limited and we'd like to do more with them.
- 17:22:53 [TabAtkins_]
- florian: For floats as we have them so far, there's a collision system built into the model.
- 17:23:11 [TabAtkins_]
- florian: So you can't make an exclusions model that doesn't have a collision system.
- 17:23:26 [TabAtkins_]
- florian: Your model is more expressive - you can do *lots* of different things with it.
- 17:23:42 [TabAtkins_]
- florian: But by not combining it with a collision model, you lose the safety of floats.
- 17:24:00 [TabAtkins_]
- florian: You're saying that people will deal with it by using something else. But they might not do that.
- 17:24:18 [smfr]
- smfr has joined #css
- 17:24:36 [TabAtkins_]
- florian: Whether you have to activate the collision stuff by doing soemthing else in CSS, or by using JS, either way it's suboptimal, because authors will forget to use it.
- 17:24:39 [glazou]
- Zakim, ack stearns
- 17:24:39 [Zakim]
- I see no one on the speaker queue
- 17:24:46 [TabAtkins_]
- stearns: Two points - text wrapping is meant for occasions when things collide.
- 17:24:59 [TabAtkins_]
- stearns: Floats are allowed to collide witht he inline content, but text wraps around them.
- 17:25:21 [TabAtkins_]
- stearns: Exclusions should be orthogonal to collision handling. You're *trying* to create a collision.
- 17:26:00 [TabAtkins_]
- TabAtkins_: He's talking about multiple exclusions sitting on the same point and colliding with each other.
- 17:26:07 [TabAtkins_]
- stearns: I think that's sometimes desirable.
- 17:26:33 [TabAtkins_]
- stearns: Back to the beginnign example, if you have two fo these exclusions on a page and that was unintended,
- 17:26:38 [TabAtkins_]
- stearns: If they're floats, you get float stacking behavior.
- 17:26:52 [TabAtkins_]
- stearns: In most layout modes I've had experience with, float stacking is an error. Nobody wants that to occur.
- 17:26:56 [dbaron]
- q+
- 17:27:01 [TabAtkins_]
- stearns: What you get out of float stacking is not anything a designer would actually want.
- 17:27:19 [TabAtkins_]
- stearns: So I think we need some additional controls for handling how things get arranged when a collision occurs.
- 17:27:40 [TabAtkins_]
- dbaron: I think one of the ways we can solve that is by adding additional collision handling models for floats, so that stacking isn't the only model.
- 17:27:47 [TabAtkins_]
- dbaron: Like "if I don't ahve space, go to the next page".
- 17:28:09 [TabAtkins_]
- stearns: That would be great. But I think it should be orthogonal to exclusions.
- 17:28:28 [TabAtkins_]
- florian: One thing that worries me is that if you're designing a webpage without exclusions in a GUI environment, you won't use abspos much.
- 17:28:56 [TabAtkins_]
- florian: But if you do have exclusions, it's extremely natural to put a box in a place and say "wrap around me", and you'll start using exclusions in places where floats were just fine.
- 17:29:22 [TabAtkins_]
- florian: You might have some logic in the GUI that creates floats instead of exclusions sometimes, but I think that naively it won't happen.
- 17:29:52 [TabAtkins_]
- stearns: I think that 99% of the time, you'll have a single exclusion, so conflicts won't happen.
- 17:30:39 [vhardy_]
- vhardy_ has joined #css
- 17:30:41 [TabAtkins_]
- florian: I'm worried that it's just too easy to do this kind of thing with bad-behaving abspos.
- 17:31:15 [TabAtkins_]
- szilles: I think that Grid will often be the easiest thing. People will want columns, etc. Very natural to do it in a grid, and no abspos is involved.
- 17:31:44 [TabAtkins_]
- [argument about usefulness of abspos]
- 17:32:23 [stearns]
- s/99/90/
- 17:32:50 [TabAtkins_]
- Rossen: One point I keep wanting to make is that the exclusions spec is trying to describe a general model for propagating exclusion areas through structures of content - any structure.
- 17:33:24 [TabAtkins_]
- Rossen: Floats are an extremely document-centric tool that's intended to work in a single flat flow of textual content.
- 17:33:57 [TabAtkins_]
- Rossen: This is meant to provide a base level of exclusion handling on the base level of floats, so when you have a higher-level layout system, once they're positioned there, everything that needs to be excluded is excluded.
- 17:35:27 [TabAtkins_]
- [argument about running into things by default, or avoiding by default]
- 17:36:00 [TabAtkins_]
- florian: *Because* this doesn't talk about positioning, it's possible, even easy, to let things run into each other by accident.
- 17:37:25 [TabAtkins_]
- glazou: I feel that you're afraid of people abusing or just inexpertly using features.
- 17:37:29 [TabAtkins_]
- [chaos]
- 17:37:42 [TabAtkins_]
- glazou: Whatever we do, users will find ways to use it badly and good.
- 17:38:13 [TabAtkins_]
- florian: We shouldn't try to prevent bad behavior - that's impossible. We should make good behavior the default, though.
- 17:38:27 [sylvaing]
- it's entirely possible that there is no 'ideal' default here
- 17:38:58 [dbaron]
- Tab: Vincent, their point is that it doesn't talk about positioning -- that's *why* it gets bad behavior by default.
- 17:39:59 [TabAtkins_]
- florian: You're seeing the complete independence of layout modes as a feature, I'm seeing this as a bug.
- 17:40:25 [dbaron]
- Tab: The goal isn't preventing bad behavior -- the goal is making good behavior the default. Taking the simplest route possible shouldn't lead to bad behavior.
- 17:40:55 [dbaron]
- stearns: The simplest case possible is a single exclusion.
- 17:41:45 [dbaron]
- stearns: would like to discuss on mailing list
- 17:41:51 [TabAtkins_]
- szilles: I think they want graceful degradation under normal circumstances on the web.
- 17:42:39 [TabAtkins_]
- [more chaos]
- 17:42:40 [dbaron]
- Sylvain: We've had this discussion in 3 cities now.
- 17:42:57 [dbaron]
- dbaron: What's new this time?
- 17:43:58 [dbaron]
- Florian: Extend floats to cover more use cases, rather than ...
- 17:44:07 [dbaron]
- glazou: This is not being minuted.
- 17:44:16 [dbaron]
- Tab: This same discussion has been minuted twice already.
- 17:44:20 [dbaron]
- glazou: This discussion has to be minuted.
- 17:44:22 [vhardy_]
- q+
- 17:44:29 [dbaron]
- ack dbaron
- 17:44:30 [fantasai]
- twice is an understatement, I'm pretty sure it's more than that...
- 17:45:01 [dbaron]
- Florian: I think a number of people would be more comfortable with extending existing float mechanism to cover more cases that it currently doesn't cover
- 17:45:20 [dbaron]
- Florian: Rather than the model being proposed here, which solves a bunch of things, and introduces a whole bunch of issues that we don't currently have a solution for.
- 17:45:27 [dbaron]
- Steve: It's not proven to me that it introduces the problem.
- 17:45:32 [dbaron]
- ack vhardy_
- 17:45:58 [dbaron]
- vincent: the discussion we haven't been able to resolve is that ... exclusions & absolute positioning
- 17:46:02 [dbaron]
- Florian: doesn't say that
- 17:46:18 [dbaron]
- vincent: here exclusions has a model such that you can use it with other positioning schemes
- 17:46:31 [dbaron]
- vincent: The other option is to say that exclusions don't work with that positioning scheme.
- 17:46:48 [dbaron]
- vincent: Specification takes care to make a generic model. The repeated thing that says it's bad
- 17:46:58 [dbaron]
- vincent: The issue is an incorrect characterization of the problem.
- 17:47:06 [dbaron]
- vincent: I'd be ok with a specific technical issue the spec has
- 17:47:09 [dbaron]
- q+
- 17:47:34 [dbaron]
- vincent: ... not with generic issues that the spec
- 17:48:10 [florian]
- not with generic issues about the spec relying on abspos because that's not true
- 17:48:12 [glazou]
- vincent: but not with saying the spec relies on abspos because it's not the case
- 17:48:37 [TabAtkins_]
- q+
- 17:48:55 [TabAtkins_]
- dbaron: The fundamental issue is that a whole bunch of us are saying that we don't think you should have an exclusions model without a collision model.
- 17:49:07 [TabAtkins_]
- stearns: Can we put that in the issue?
- 17:49:43 [TabAtkins_]
- Rossen: So if a collision model is expected at the same time as the exclusions, that's an issue we can address.
- 17:50:13 [TabAtkins_]
- stearns: There's a discussion on the mailing list where florian said something like this.
- 17:50:32 [TabAtkins_]
- stearns: I said that I'd be fine with exchanging the current issue text with what florian provided.
- 17:50:54 [TabAtkins_]
- stearns: If dbaron could respond and say that's okay, we'd be great.
- 17:51:23 [TabAtkins_]
- szilles: I can add a property that says "avoid collisions", and define what it does.
- 17:51:36 [vhardy_]
- q+
- 17:51:37 [TabAtkins_]
- dbaron: It's really not that simple.
- 17:51:43 [TabAtkins_]
- szilles: That's what XSL did.
- 17:51:50 [TabAtkins_]
- ack TabAtkins_
- 17:52:41 [TabAtkins__]
- TabAtkins__ has joined #css
- 17:53:13 [dbaron]
- Florian: 2 ways forward: either the exclusion model as it is gets extended to deal with the bad cases or the model is dropped and instead we try to extend the float model to cover more of the use cases
- 17:53:30 [dbaron]
- Florian: Personally I don't know how to extend floats so I tried to propose an extra property for dealing with collisions
- 17:53:37 [dbaron]
- Florian: Even though I proposed that I'm not sure it's enough.
- 17:53:43 [glazou]
- tantek: +1
- 17:53:50 [dbaron]
- Florian: ... go in the direction of making the current exclusion model less bad.
- 17:54:07 [dbaron]
- Florian: If we can add sufficient ..., then I think the exclusion model could survive.
- 17:54:16 [dbaron]
- Florian: If it turns out we can't enough, then we may have to look at another approach.
- 17:56:40 [jet]
- jet has joined #CSS
- 18:05:12 [glazou]
- krit, around 1:15pm local time
- 18:05:23 [krit]
- glazou: great thanks!
- 18:10:11 [drublic]
- drublic has joined #css
- 18:18:20 [glazou]
- ScribeNick: tantek
- 18:18:22 [tantek]
- Zakim, I am the scribe
- 18:18:22 [Zakim]
- I don't understand 'I am the scribe', tantek
- 18:18:41 [Molly]
- Molly has joined #css
- 18:18:50 [tantek]
- rossen: it would be great if we can reword the current issue to state the technical problem
- 18:19:09 [tantek]
- rossen: exclusions as defined do not provide mechanism for avoiding exclusion to exclusion collisions if/when they are abs pos'd
- 18:19:22 [tantek]
- florian: that is narrower than what I meant to say
- 18:19:41 [tantek]
- florian: we need to prove that a collision handling system compatible with exclusions is possible
- 18:19:48 [tantek]
- florian: the best way to do that is to design one
- 18:19:56 [drublic]
- drublic has joined #css
- 18:19:58 [tantek]
- florian: whether it should be optional is a different question
- 18:20:22 [tantek]
- florian: missing bits: collision handling, preventing things from disappearing off the page
- 18:20:28 [tantek]
- rossen: so changing how abs pos works?
- 18:20:32 [vhardy_]
- vhardy_ has joined #css
- 18:20:52 [tantek]
- florian: what the objectors want to see, is the addition of extra mechanisms to handle those missing bits
- 18:21:03 [tantek]
- … that apply to all layout schemes
- 18:21:19 [tantek]
- … that can be used to workaround the collisions and graceful degradation issues
- 18:21:24 [tantek]
- rossen: could you summarize as an issue?
- 18:22:07 [tantek]
- ACTION Florian: summarize the issue of missing mechanism(s) to handle collision handling, preventing things from disappearing off the page
- 18:22:07 [trackbot]
- Created ACTION-496 - Summarize the issue of missing mechanism(s) to handle collision handling, preventing things from disappearing off the page [on Florian Rivoal - due 2012-08-21].
- 18:22:25 [tantek]
- vincent: would like illustrations of things that have been characterized as bad things
- 18:22:42 [tantek]
- florian: I will give some examples
- 18:23:05 [tantek]
- florian: exclusions will make people use positioning schemes that have problems that they wouldn't use in this way if exclusions weren't there.
- 18:23:46 [tantek]
- ACTION Florian: come up with examples illustrating the issues on exclusions as noted in previous action 496
- 18:23:46 [trackbot]
- Created ACTION-497 - Come up with examples illustrating the issues on exclusions as noted in previous action 496 [on Florian Rivoal - due 2012-08-21].
- 18:24:07 [tantek]
- Florian: to move forward I have a modest proposal for collision handling
- 18:24:34 [tantek]
- florian: I'm not claiming this is a sufficient answer to all problems for exclusions, but it is a step in the right direction
- 18:24:49 [tantek]
- florian: proposing new property, let's call it 'collision'
- 18:24:52 [tantek]
- florian: … auto | allow | avoid
- 18:25:03 [tantek]
- … auto computes to allow to preserve existing behavior
- 18:25:24 [tantek]
- … avoid: if two things which both have collision property of avoid end up overlapping each other, the 2nd one in document order is moved out of the way
- 18:25:31 [tantek]
- … how it is moved out of the way - up to discussion
- 18:25:41 [tantek]
- … e.g. if there is room to the right, move it to the right, otherwise move it down
- 18:25:56 [tantek]
- … could also have another property 'collision-mode'
- 18:26:05 [tantek]
- … to switch between different kinds of clearance systems
- 18:26:20 [tantek]
- … for now just need a way to say let things collide, or avoid the collision
- 18:26:27 [lstorset]
- lstorset has joined #css
- 18:26:43 [tantek]
- vincent: do you foresee this for all positioning schemes?
- 18:26:48 [tantek]
- florian: yes
- 18:27:02 [tantek]
- vincent: e.g. also for grid?
- 18:27:11 [tantek]
- vincent: a 2x3 grid
- 18:27:15 [tantek]
- florian: in general yes
- 18:27:22 [tantek]
- … property should be available to all layout modes
- 18:27:38 [tantek]
- … if there are layout modes where we don't understand what 'avoid' means, we can make it compute to 'allow'
- 18:27:43 [tantek]
- … for example for floats
- 18:27:48 [tantek]
- … auto would compute to 'avoid'
- 18:27:53 [tantek]
- … if you turn it to allow
- 18:28:03 [tantek]
- … then you could have something like this (goes to whiteboard)
- 18:30:05 [tantek]
- vincent: this may introduce behaviors in all other schemes
- 18:30:17 [tantek]
- florian: I'm going to have auto compute to whatever existing schemes do for each
- 18:30:29 [tantek]
- … e.g. on floats to 'avoid', on abs pos to 'allow'
- 18:30:45 [tantek]
- … on top of that I would add
- 18:30:50 [tantek]
- … because we are introducing exclusions now
- 18:30:58 [tantek]
- … because they are likely to increase use of abs pos
- 18:31:02 [tantek]
- … we have a chance of fixing it there
- 18:31:10 [tantek]
- … on abs pos to which exclusions is applied
- 18:31:16 [tantek]
- … auto should compute to 'avoid'
- 18:31:31 [tantek]
- vincent: why are exclusions encouraging use of abs pos?
- 18:31:48 [tantek]
- florian: i can answer, but it has been answered already
- 18:31:51 [tantek]
- … a bunch of times
- 18:32:20 [tantek]
- vincent: it's a different question
- 18:32:27 [tantek]
- florian: it's the same, we've answered it a bunch of times
- 18:32:33 [tantek]
- … it's maybe not answered well
- 18:32:40 [tantek]
- fantasai: we keep having this same question/discussion
- 18:33:10 [tantek]
- vincent: why do you think exclusions are encouraging the use of abs pos?
- 18:33:22 [tantek]
- florian: i've answered this, but i would like to time answer it better.
- 18:33:30 [tantek]
- zilles: vincent, why is the answer important?
- 18:33:45 [tantek]
- peter: given exclusions, people will use abs pos more. i see that as a good thing.
- 18:33:57 [tantek]
- peter: i have a question for you (vincent)
- 18:34:03 [tantek]
- correction for florian
- 18:34:08 [fantasai]
- vincent, http://lists.w3.org/Archives/Public/www-style/2012May/0531.html
- 18:34:24 [fantasai]
- vincent, search for "But exclusions make abspos more attractive by avoiding"
- 18:34:54 [tantek]
- peter: when you turn on exclusions for abs pos, you're defining how it should behave when it collides, he's asserting that the default behavior is that it shouldn't collide, and that doesn't make sense to me.
- 18:35:10 [tantek]
- florian: this is a small but significant misunderstanding
- 18:35:27 [tantek]
- … when the collision property computes to 'avoid', it avoids other things that have 'avoid'
- 18:35:37 [tantek]
- e.g. if you have 2 abs pos *both* with 'avoid' they will avoid each other
- 18:35:40 [tantek]
- … but not others
- 18:35:45 [drublic]
- drublic has joined #css
- 18:35:53 [tantek]
- rossen: if they're on top of another exclusion?
- 18:36:01 [tantek]
- florian: if you want a collision...
- 18:36:09 [tantek]
- rossen: how do you avoid one but not the other
- 18:36:17 [tantek]
- … you are giving me only a binary choice
- 18:36:22 [tantek]
- … I want to avoid some but not others
- 18:36:34 [tantek]
- tabatkins: what's the use case for it?
- 18:36:43 [tantek]
- rossen: 15 or so examples in the wiki
- 18:36:52 [tantek]
- stearns: www-style list post from apple
- 18:37:10 [tantek]
- florian: you have several examples where exclusions are supposed to be on top of each other, but avoid some other
- 18:37:15 [dbaron]
- So far, I don't like this 'collision' proposal all that much, but I'd like to think about it more.
- 18:37:30 [tantek]
- florian: i don't think you have such things in the examples
- 18:37:44 [tantek]
- zilles: you have a notion of grouping which acts as an entity and an exclusion goes into the group
- 18:37:53 [tantek]
- … that would allow you to define an appropriate method of the exclusion process
- 18:38:10 [tantek]
- florian: if it's really important we can do it, but i don't think it is necessary
- 18:38:49 [tantek]
- florian: this is most useful on abs pos which have exclusions turned on
- 18:38:55 [tantek]
- (in response to a q from vincent)
- 18:39:03 [tantek]
- florian: the whole point I designed this
- 18:39:07 [tantek]
- … is to try to save exclusions
- 18:39:13 [tantek]
- … from the folks that say it won't work
- 18:39:39 [tantek]
- vincent: are you proposing to work on the exclusions spec?
- 18:39:56 [tantek]
- florian: I'm interested in working on everything, not sure I can commit the time.
- 18:40:04 [tantek]
- … I am putting this out there, hoping folks find it interesting
- 18:40:11 [tantek]
- … not promising I can carry it forward (time)
- 18:40:24 [tantek]
- zilles: this is a proposal that you believe might lead to a suitable graceful degradation
- 18:40:42 [tantek]
- florian: this is one piece of a solution to make exclusions acceptable, not sure it is sufficient
- 18:41:17 [tantek]
- … this is useful, otherwise half the group will object to exclusions
- 18:41:34 [tantek]
- molly: i can see this being very logical from the author perspective, useful in the scenario you described
- 18:41:57 [tantek]
- … would be useful on a global thing
- 18:42:04 [tantek]
- … any time you might have a collision
- 18:42:07 [tantek]
- … to have that choice
- 18:42:11 [tantek]
- … what would be the default be?
- 18:42:19 [tantek]
- florian: for abs pos, allow, for floats, avoid
- 18:42:25 [tantek]
- … just have to work out the layout modes one by one
- 18:42:48 [tantek]
- … it may be tricky where collisions seem impossible
- 18:42:51 [tantek]
- … e.g. in flexbox
- 18:43:09 [tantek]
- … so what should we do?
- 18:43:17 [Bert]
- q+ to suggest using grid templates (of course :-) ), i.e., replacing abspos instead of trying to enhance it...
- 18:43:20 [tantek]
- … I think we can work it out for layout modes where collisions are *possible*
- 18:43:31 [tantek]
- … and we can use 'auto' to preserve the existing behavior
- 18:43:35 [tantek]
- Molly: would be useful
- 18:43:44 [tantek]
- Peter: this is scary when layout modes intersect
- 18:44:00 [tantek]
- … flex box, abs pos on top of it with avoid, what moves?
- 18:44:13 [tantek]
- florian: with abs pos and float, we can move floats out of the way
- 18:44:20 [tantek]
- … with flexbox there might not be an answer
- 18:44:32 [tantek]
- … we may have to just say that with flexbox it computes to 'allow'
- 18:44:53 [tantek]
- peter: if i have a flexbox with multiple items with collision values, and then a grid item with collision item with avoid, then ...
- 18:45:00 [tantek]
- florian: respect document order, don't move the first one.
- 18:45:09 [tantek]
- … the 2nd one moves out of the way
- 18:45:19 [tantek]
- … if we don't find an avoidance behavior for flexbox they'll avoid
- 18:45:30 [tantek]
- CORRECTION: they'll overlap
- 18:45:39 [tantek]
- … if we do find an avoidance behavior, they'll avoid
- 18:45:47 [tantek]
- zilles: at the risk of complicating things
- 18:45:52 [tantek]
- … in grid, the default is that they overlay
- 18:45:57 [tantek]
- … e.g. two things in one grid cell
- 18:46:05 [tantek]
- … Bert's templates had the items stacking
- 18:46:17 [tantek]
- … there's at least one option of saying avoid on things in a grid cell
- 18:46:20 [tantek]
- … we could make them avoid
- 18:46:30 [tantek]
- bert: that's a way to define exclusion, and then that's the grid
- 18:46:51 [tantek]
- … either use grid-column and grid-row to put it there, it will overlap
- 18:47:00 [tantek]
- … or the flow property and it will not overlap
- 18:47:35 [tantek]
- (references previous a grid diagram on the whiteboard a a a … b … c c … )
- 18:47:43 [tantek]
- but it's not an extension of abs pos
- 18:47:50 [tantek]
- … it's an alternative way of doing the same thing.
- 18:48:23 [Bert]
- q?
- 18:48:28 [tantek]
- florian repeats statement about defining for all modes.
- 18:48:36 [Bert]
- q-
- 18:49:13 [tantek]
- molly: I think you're solving what will become a design problem for designers
- 18:49:15 [tantek]
- … no comment on syntax
- 18:49:16 [vhardy_]
- q-
- 18:49:21 [tantek]
- … but makes sense and would be teachable
- 18:49:45 [tantek]
- Florian: do the people who object to exclusions feel better if something like this is in place?
- 18:49:51 [tantek]
- Florian: just Tab?
- 18:49:59 [tantek]
- Florian: I will try to write something up
- 18:50:46 [tantek]
- florian: where should it go?
- 18:50:58 [tantek]
- rossen: would prefer in positioning
- 18:51:02 [tantek]
- … CSS3 Positioning
- 18:51:27 [arronei_]
- It works for me in CSS Positioning.
- 18:51:38 [tantek]
- rossen: to me this makes sense to go with positioning.
- 18:51:45 [arronei_]
- Rossen you and I can put all this in there
- 18:51:52 [tantek]
- molly: I also see this as a relevant approach to add control
- 18:52:00 [tantek]
- rossen: even if they're not exclusions
- 18:52:02 [tantek]
- molly: yeah
- 18:52:10 [tantek]
- florian: I want to make it work universally
- 18:52:47 [tantek]
- Florian's diagram from that he drew on the whiteboard: http://instagr.am/p/OUbY-Fg9c3/
- 18:53:36 [tantek]
- florian: you can give me an action item
- 18:53:53 [tantek]
- ACTION Florian: write a draft proposal for the 'collision' property with values: auto | avoid | allow
- 18:53:54 [trackbot]
- Created ACTION-498 - Write a draft proposal for the 'collision' property with values: auto | avoid | allow [on Florian Rivoal - due 2012-08-21].
- 18:54:19 [tantek]
- CHANGE TOPIC
- 18:54:54 [tantek]
- IMAGE VALUES
- 18:55:10 [tantek]
- section 4.3
- 18:55:18 [vhardy__]
- vhardy__ has joined #css
- 18:55:25 [tantek]
- of css4 image values and replace content module
- 18:55:31 [tantek]
- image-set
- 18:55:37 [tantek]
- regarding responsive images
- 18:56:07 [tantek]
- shows example 10
- 18:56:27 [tantek]
- TabAtkins: describes the example
- 18:56:39 [tantek]
- … 1x, 2x, 600dpi
- 18:57:01 [tantek]
- daniel: why not use media queries?
- 18:57:20 [tantek]
- TabAtkins__: defining connection speed, and when you want to download something is VERY difficult
- 18:57:31 [tantek]
- .. even just doing 2 modes low/high is difficult.
- 18:57:40 [tantek]
- Florian: allows the browser to only download one
- 18:57:51 [tantek]
- TabAtkins__: can also result in perverse behavior
- 18:58:24 [tantek]
- … if you have a highspeed connection, downloading big image, then go into a tunnel, and mq would switch to low-res even though you already have the highres big image
- 18:58:33 [tantek]
- hober: mqs are about the display
- 18:58:47 [tantek]
- florian: if we're dealing with bandwidth, there's no way to do with mqs
- 18:59:04 [tantek]
- … OTOH dealing with bandwidth is so hard, that not convinced browser may be able to do it anyway
- 18:59:12 [tantek]
- TabAtkins__: quality of implementation
- 18:59:20 [tantek]
- … browser can do better
- 18:59:31 [tantek]
- florian: if no one does better then this was pointless
- 18:59:43 [tantek]
- … would be nice if browsers did something with bandwidth though
- 18:59:50 [tantek]
- vincent: src-set?
- 18:59:54 [hober]
- See also "Why a scale factor and not a full-blown media query" in http://lists.w3.org/Archives/Public/www-style/2012Feb/1103.html
- 18:59:55 [tantek]
- TabAtkins__: this is the css version of src-set
- 19:00:02 [tantek]
- TabAtkins__: 3 issues
- 19:00:17 [tantek]
- … 1. inconsistency with src-set
- 19:00:22 [tantek]
- … suggestion: be consistent
- 19:00:37 [tantek]
- hober: agreed
- 19:00:48 [tantek]
- TabAtkins__: I do have one bit I'd like to keep
- 19:00:55 [tantek]
- … you can specify a fallback color at end
- 19:01:02 [tantek]
- … useful if browser can't download any image
- 19:01:12 [tantek]
- … or on such a bad connection, browser decides to not download
- 19:01:16 [tantek]
- … and just use color
- 19:01:21 [tantek]
- … but we should drop other fallbacks.
- 19:01:30 [tantek]
- hober: this is nice
- 19:01:43 [tantek]
- vincent: i have a question
- 19:01:53 [tantek]
- … user agent is presented with list of possible things, hints about resolution
- 19:01:58 [tantek]
- … what if i have vector image for fallback
- 19:02:01 [tantek]
- … but doesn't have hinting
- 19:02:08 [tantek]
- … sometimes for icons you want hinting
- 19:02:19 [tantek]
- … in cases like that am I still allowed to make those trade-offs?
- 19:02:27 [tantek]
- … vector is high resolution but has benefit of being tiny
- 19:02:32 [tantek]
- … would that be possible?
- 19:02:44 [tantek]
- TabAtkins__: so on a highres device use SVG, on lowres use icon?
- 19:02:50 [tantek]
- florian: and ....
- 19:02:55 [tantek]
- TabAtkins__: I think you can do that
- 19:03:06 [tantek]
- … with 2 diff resolution descriptors
- 19:03:18 [tantek]
- … one very high resolution, and one very low bandwidth
- 19:03:32 [tantek]
- florian: syntax is not ideal, but it is possible
- 19:03:56 [tantek]
- fantasai: vincent's point/scenario above is a good one to note
- 19:04:08 [tantek]
- TabAtkins__: don't adjust the resolution if you choose the image
- 19:04:18 [tantek]
- … this is for a high res device, but nothing special has to be done to it.
- 19:04:51 [tantek]
- Action TabAtkins: to address issue of where to put an SVG image for high resolution and low bandwidth in image-set.
- 19:04:51 [trackbot]
- Sorry, couldn't find user - TabAtkins
- 19:05:03 [tantek]
- Action Tab: address issue of where to put an SVG image for high resolution and low bandwidth in image-set.
- 19:05:03 [trackbot]
- Created ACTION-499 - Address issue of where to put an SVG image for high resolution and low bandwidth in image-set. [on Tab Atkins Jr. - due 2012-08-21].
- 19:05:25 [tantek]
- vincent: in the version of image-set and src-set, there was more than just resolution, e.g. width/height
- 19:05:42 [tantek]
- TabAtkins__: the reason is that src-set in HTML also allows width/height
- 19:05:48 [tantek]
- … that doesn't show up in image-set
- 19:05:52 [tantek]
- … because they are just MQs
- 19:05:59 [tantek]
- … you can do those easily in CSS
- 19:06:07 [tantek]
- … but you can't in HTML, that's why they're in src-set
- 19:06:20 [tantek]
- Florian: the question is whether you can use full MQ syntax in HTML
- 19:06:40 [tantek]
- … some don't want to, hence those features in the HTML version separate from MQs.
- 19:06:50 [tantek]
- vincent: another issue was co-location of rules in style sheets
- 19:06:57 [tantek]
- … e.g. your image resource in one place
- 19:07:02 [tantek]
- … various conditions under which it would be used
- 19:07:07 [tantek]
- … are you considering that now?
- 19:07:14 [tantek]
- TabAtkins__: I remember seeing that suggestion
- 19:07:20 [tantek]
- … this is not the right place to address that
- 19:07:29 [tantek]
- … if we want to address MQs move conditions too far
- 19:07:35 [tantek]
- … away from properties
- 19:07:43 [tantek]
- … then we should address that by allowing nesting MQs
- 19:07:50 [tantek]
- … not just for image functionality.
- 19:08:16 [tantek]
- Peter: I like aligning with src-set, but I see the fallback behavior as useful.
- 19:08:27 [tantek]
- Hober: purpose of the image function to do the decode fall back thing
- 19:08:31 [tantek]
- … they're composable.
- 19:08:36 [tantek]
- Peter: combining them will get ugly
- 19:08:45 [tantek]
- Hober: combining them is not a common use-case
- 19:08:55 [vhardy_]
- vhardy_ has joined #css
- 19:09:01 [tantek]
- Peter: what will happen is someone point to one version then a high resolution
- 19:09:10 [tantek]
- … and print version will get lost / 404
- 19:09:28 [tantek]
- TabAtkins__: my use-case for this is being able to send down just one image
- 19:09:35 [tantek]
- … rather than having to download multiple versions
- 19:09:45 [tantek]
- … extra latency can be very harmful to page behavior
- 19:10:06 [tantek]
- Peter: the fallback behavior is, pick the right one, try to download it, only if that fails, then you try the next one.
- 19:10:14 [tantek]
- TabAtkins__: but that causes the bad behavior
- 19:10:24 [tantek]
- florian: you're choosing between slow display and no display
- 19:10:37 [tantek]
- dbaron: the other question is when do authors see that things are broken?
- 19:10:49 [tantek]
- … e.g. if it goes and downloads a different one, then authors won't notice first problem.
- 19:11:05 [tantek]
- Peter: then it gets back to philosophy debate of how things should fail gracefully or not
- 19:11:13 [tantek]
- … whether you should have a fail-early mode for authors to check their pages
- 19:11:23 [tantek]
- … in general browsers tend to do the right thing for users
- 19:11:39 [tantek]
- Florian: how about we keep the fallback behavior and ask src-set to add it
- 19:11:49 [tantek]
- florian: there is no downside for them here that's not here for us
- 19:12:11 [tantek]
- florian: the one case it is actually worse, long list of many image, you try all of them, they all fail, and you're on a slow connection
- 19:12:30 [tantek]
- hober: having a combination allows the author to explicitly choose what they want to do in those scenarios.
- 19:12:36 [tantek]
- fantasai: then you have to repeat. e.g.
- 19:12:51 [tantek]
- … combinatorial explosion of image sets within image sets
- 19:13:32 [tantek]
- florian: if you put image-set in image then you can't know which part of the image will fail to load, you can't tell the browser which one to load, the answer is to next them the other way around.
- 19:13:41 [tantek]
- fantasai: you have to repeat the entire list
- 19:13:53 [tantek]
- TabAtkins__: the alternate way is, here is a fallback image if you can't use the one in the image-set
- 19:14:03 [tantek]
- florian: unless the fallback is the one that failed to load
- 19:14:11 [tantek]
- … then you need a fallback for the fallback
- 19:14:19 [tantek]
- peter: the other problem is different fallback behaviors
- 19:14:31 [tantek]
- … e.g. if browser picks medium one, and it fails, which one should it fallback to?
- 19:14:35 [tantek]
- hober: the author should choose
- 19:14:52 [tantek]
- peter: doesn't know what the browser is seeing
- 19:14:54 [tantek]
- florian: add MQs on top of that then
- 19:14:59 [tantek]
- … this is going to be a mess
- 19:15:09 [tantek]
- hober: does anyone want to implement the crazy fallback situation in this case/
- 19:15:10 [tantek]
- ?
- 19:15:26 [tantek]
- fantasai: it's just like having image but browser gets to pick the order
- 19:15:47 [tantek]
- florian: we can try to align, and then make src-set align, and then if they refuse we can revisit
- 19:15:55 [tantek]
- florian: it doesn't slow down the main use case
- 19:16:12 [tantek]
- TabAtkins__: it doesn't slow down the everything works case, we care about the recovery behavior
- 19:16:22 [tantek]
- … whether to do more connections automatically
- 19:16:31 [tantek]
- … or have the author make that choice explicitly
- 19:16:45 [tantek]
- TabAtkins__: most people on mobile connections don't want to download more connections
- 19:16:54 [tantek]
- Hober: point is to avoid extra connections
- 19:17:00 [tantek]
- Peter: no, point is to pick the right image
- 19:17:12 [tantek]
- florian: downloading both to figure out which one to use is a waste of time
- 19:17:19 [tantek]
- … either you look like crap or you dont'
- 19:17:25 [Bert]
- q+ to say that SMIL, SVG, HTML and probably others all have solved or are trying to solve this same pb. Maybe it is time for a language-independent solution? Or we could just use SVG, which CSS already imports anyway.
- 19:17:36 [tantek]
- peter: on a retina display, if high res version fails
- 19:17:43 [tantek]
- … then I'm going to fallback with lower res version
- 19:17:48 [tantek]
- … going to wind up with smaller data usage
- 19:18:17 [tantek]
- florian: I think we should ask src-set to get the fallback behavior as well
- 19:18:20 [tantek]
- TabAtkins__: I'm fine with that
- 19:18:38 [tantek]
- … asking HTML about that
- 19:18:59 [tantek]
- Bert: I'm wondering given all the other things we have to talk about
- 19:19:04 [tantek]
- … should we really be discussing this?
- 19:19:08 [tantek]
- … we can just use SVG
- 19:19:20 [tantek]
- TabAtkins__: it has nothing to do with resolution negotiation
- 19:19:27 [tantek]
- Bert: SVG uses SMIL
- 19:19:32 [tantek]
- … switch statement
- 19:19:41 [tantek]
- Florian: does not take bandwidth into account
- 19:19:48 [tantek]
- Bert: lots of work on this
- 19:19:56 [tantek]
- … why are we doing it at all?
- 19:20:05 [tantek]
- florian: HTML is solving it for content, we need it for css
- 19:20:14 [tantek]
- bert: should it be solved independent?
- 19:20:22 [tantek]
- NEXT ISSUE
- 19:20:24 [tantek]
- 2 of 3
- 19:20:30 [tantek]
- TabAtkins__: the ex unit
- 19:20:38 [tantek]
- … it is a synonym for dppx unit
- 19:20:44 [tantek]
- … should it use resolution unit
- 19:20:46 [tantek]
- … or ...
- 19:21:07 [tantek]
- TabAtkins__: (summarizes issue)
- 19:21:17 [tantek]
- Peter: I don't think we should have the 'x' unit
- 19:21:21 [tantek]
- s/ex/x above
- 19:21:35 [tantek]
- Peter: I don't want a synonym
- 19:21:44 [tantek]
- Hober: x just describes a scale factor
- 19:21:51 [tantek]
- florian: HTML has the x unit
- 19:22:01 [tantek]
- … we have the resolution thing already and not care about the x
- 19:22:11 [tantek]
- hober: the resolution units are terrible and we shouldn't propagate them further
- 19:22:47 [tantek]
- TabAtkins__ and hober argue about dpi vs dppx
- 19:22:47 [Bert]
- (Re bandwidth: the SWITCH element does take bandwidth into account, via the systemBitrate attribute.)
- 19:23:54 [tantek]
- florian: I think using resolution here is fine, I don't think we need 'x'
- 19:24:06 [tantek]
- TabAtkins__: dppx is the worst name for a unit
- 19:24:30 [tantek]
- … ddpx is an easy typo to make
- 19:24:33 [tantek]
- … it's done a lot
- 19:24:50 [tantek]
- fantasai: is it too late to change now? we have a CR
- 19:24:52 [tantek]
- … we have implementations
- 19:24:58 [tantek]
- TabAtkins__: dpi or dpcm?
- 19:25:06 [tantek]
- zilles: it's not going to please half of the people
- 19:25:24 [tantek]
- TabAtkins__: we are in a worse situation if we leave it to we already invented a crappy unit, and we don't want a better unit
- 19:25:31 [jet]
- jet has joined #CSS
- 19:25:36 [tantek]
- Vincent: question - one is resolution vs length?
- 19:25:45 [tantek]
- TabAtkins__: no, dppx is dots per pixel. not a length.
- 19:26:01 [dbaron]
- I actually think x as a synonym for dppx is pretty reasonable.
- 19:26:02 [tantek]
- florian: just use resolution here, in addition if you want 'x' to be a synonym, let's discuss elsewhere
- 19:26:13 [tantek]
- … if we introduce 'x' i want it everywhere
- 19:26:17 [tantek]
- TabAtkins__: that's the proposal
- 19:26:19 [tantek]
- NEXT ISSUE
- 19:26:21 [tantek]
- 3 of 3
- 19:26:41 [tantek]
- actually "ISSUE 1" in current draft of spec (URL?)
- 19:26:53 [tantek]
- TabAtkins__: image-set inside itself is an issue
- 19:26:57 [tantek]
- … nesting
- 19:27:11 [tantek]
- … we can either disallow it
- 19:27:19 [hober]
- image-set(image-set(foo 1x, bar 2x) 2x, baz 1x)
- 19:27:23 [hober]
- (and you choose foo)
- 19:27:26 [tantek]
- Tabatkins: but then you have to search arbitrarily deep
- 19:27:51 [tantek]
- fantasai: i suggest disallowing that example
- 19:27:57 [tantek]
- hober: am ok with disallowing
- 19:28:03 [tantek]
- … but still doable
- 19:28:07 [tantek]
- TabAtkins__: am fine with disallowing
- 19:28:27 [tantek]
- molly: when we start looking at syntax of this nature, designers will freak out
- 19:28:37 [tantek]
- … I can see it turning into a horrible problem
- 19:28:47 [tantek]
- florian: someone writes a blog post … gets copy pasted everywhere
- 19:28:58 [tantek]
- Molly: i'm concerned with the syntax
- 19:29:25 [tantek]
- … I just want to advocate always keeping syntax in CSS as human as possible
- 19:29:33 [tantek]
- … the nesting starts to look confusing
- 19:29:44 [tantek]
- TabAtkins__: agreed in general, nesting functions is usually confusing
- 19:29:52 [tantek]
- LUNCH
- 19:48:12 [drublic]
- drublic has joined #css
- 19:51:04 [Koji]
- Koji has joined #css
- 19:56:34 [vhardy_]
- vhardy_ has joined #css
- 19:58:39 [mmielke]
- mmielke has joined #css
- 19:59:39 [drublic]
- drublic has joined #css
- 20:06:21 [drublic]
- drublic has joined #css
- 20:27:46 [pcupp]
- pcupp has joined #css
- 20:27:51 [myakura]
- myakura has joined #css
- 20:30:09 [vhardy_]
- vhardy_ has joined #css
- 20:33:33 [vhardy_]
- vhardy_ has joined #css
- 20:36:10 [ksweeney1]
- ksweeney1 has joined #css
- 20:36:32 [ksweeney1]
- ksweeney1 has left #css
- 20:41:26 [fantasai]
- pcupp: still gathering people from the lunch break afaict
- 20:41:34 [fantasai]
- pcupp: will let you know once we restart
- 20:41:54 [krit]
- krit has joined #css
- 20:46:03 [pcupp]
- fantasai: could you send us the phone number to join the discussion?
- 20:46:36 [TabAtkins_]
- TabAtkins_ has joined #css
- 20:48:22 [tantek]
- pcupp - do you have skype?
- 20:48:45 [sylvaing]
- pcupp, yes we'll use Skype
- 20:48:57 [sylvaing]
- (it's a Microsoft product now - allegedly)
- 20:49:54 [fantasai]
- ScribeNick: fantasai
- 20:49:54 [tantek]
- scribenick fantasai
- 20:50:38 [fantasai]
- fantasai: Should do Grid Layout, b/c pcupp is waiting
- 20:51:31 [TabAtkins__]
- TabAtkins__ has joined #css
- 20:51:59 [fantasai]
- sylvaing is setting up Skype
- 20:52:29 [sylvaing]
- pcupp, call w3c-csswg
- 20:52:31 [fantasai]
- discussing element() while waiting for technical stuff
- 20:52:50 [tantek]
- still in css4-images
- 20:52:55 [tantek]
- section 4.4
- 20:53:02 [fantasai]
- Tab: Right now syntax is limited to ID selector
- 20:53:32 [fantasai]
- Tab: Bit limiting -- means you have to attach an ID to the element
- 20:53:40 [fantasai]
- Tab: Some thoughts on how to extend this
- 20:54:04 [fantasai]
- Tab: firstly, arbitrary selectors. Represent first such element in the document
- 20:54:15 [fantasai]
- dbaron: Seems potentially expensive
- 20:54:25 [dbaron]
- for dynamic updates
- 20:54:59 [fantasai]
- fantasai: I don't see very strong reasons to have that vs. ID selectors, there are no implementations, would prefer to defer this to another level
- 20:55:14 [pcupp]
- sylvaing, not a skype user... will get it setup and then call... give us a sec (is there not just a phone number?)
- 20:55:27 [fantasai]
- Tab: ok, I'm ok with that
- 20:55:35 [fantasai]
- Tab: Secondary one, should be able to point to SVG paint servers
- 20:55:36 [sylvaing]
- pcupp, no no phone. and skype sound will be way better (yes, really)
- 20:56:00 [fantasai]
- Tab: Problem is you have to literally embed SVG into the HTML
- 20:56:06 [glazou]
- at next ftf, we will discuss speedos instead of pseudos
- 20:56:11 [fantasai]
- Tab: If you want to use across style shets, have to duplicate the SVG in every document
- 20:56:19 [fantasai]
- Tab: would be nice to point at an externa SVG document
- 20:56:36 [fantasai]
- dbaron: Does that do anything that an SVG rect with fill property wouldn't do?
- 20:56:40 [florian]
- A use case I would like to see addressed is to be able to select a page as generated by overflow:paged as the source of element(), so that a visual index of pages can be created and used to navigate through a interactive paginated document.
- 20:57:14 [Molly]
- Molly has joined #css
- 20:57:42 [fantasai]
- Tab: I guess not..
- 20:57:54 [fantasai]
- fantaai: Would that work for all fills, including patterns etc.
- 20:57:59 [fantasai]
- dbaron: Think so
- 20:58:27 [fantasai]
- fantasai: So why do we want to point to paint servers if we can just point to SVG?
- 20:59:05 [fantasai]
- fantasai: I think we do want to make sure we can pull SVG gradients/pattersn/etc out of an SVG document *somehow*
- 20:59:31 [fantasai]
- dbaron: Not sure it adds any complexity to what we're doing in any case
- 20:59:48 [fantasai]
- Tab: How do we point to something not in the document?
- 20:59:58 [fantasai]
- Tab: Use case of creating a canvas element in script, using it in various other places
- 21:00:08 [fantasai]
- Tab: Right now have to put the canvas in the document with display: none
- 21:00:12 [fantasai]
- Tab: Ideally can use it via script
- 21:00:19 [fantasai]
- Tab: Mozilla can do that currently, not sure it's ideal
- 21:00:33 [fantasai]
- Tab: It aliases an ID to point to a particular image element (which may or may not be in a document)
- 21:00:51 [fantasai]
- Tab: In a previous draft I had this take either ident or ID selector
- 21:00:57 [fantasai]
- Tab: But that conflicted with wanting an arbitrary selector
- 21:01:09 [fantasai]
- Tab: If we don't end up wanting arbitrary selectors...
- 21:01:22 [fantasai]
- Florian: Haven't found another way to select arbitrary pages etc.
- 21:01:28 [fantasai]
- Tab: If we don't need URLs, we can just use the string for that
- 21:01:43 [fantasai]
- dbaron: could also just have two function names
- 21:01:53 [fantasai]
- Tab: Seems a little bit messy, but not opposed
- 21:02:36 [fantasai]
- fantasai: Also have element() name conflict with gcpm
- 21:02:38 [fantasai]
- as an issue
- 21:02:50 [fantasai]
- Tab: issue on how to make an element not in the document to be available
- 21:02:54 [fantasai]
- Tab: FF does a name-mapping
- 21:03:04 [fantasai]
- Tab: Another option is to just have a map, hanging off of the document
- 21:03:15 [fantasai]
- Tab: document.CSSElementMap() to make a map
- 21:03:29 [fantasai]
- Tab: don't know if any real benefit to one or another
- 21:04:09 [smfr]
- webkit already has a kind of map for -webkit-canvas
- 21:04:13 [fantasai]
- side discussion on selector matching of multiple elements with same ID
- 21:04:17 [smfr]
- document.getCanvasContext() or something
- 21:04:50 [fantasai]
- fantasai: one of the main use cases for this originally was reflections. How does this solve reflections?
- 21:05:20 [fantasai]
- Tab: You would give the element an ID, and then create a rule for that element
- 21:05:40 [fantasai]
- fantasai: But I can't say "I want these 5 icons to do reflections"
- 21:05:47 [fantasai]
- Tab: Yeah, you'd have to handle each one individually
- 21:06:00 [fantasai]
- dbaron: There've been lots of interesting demos of this functionality, but don't remember how reflections were handled
- 21:06:40 [smfr]
- maybe you need a special selector for "the element the style is applied to"
- 21:06:54 [fantasai]
- Wouldn't that be :scope?
- 21:07:00 [fantasai]
- or :context, whatever it's called
- 21:07:06 [fantasai]
- glazou: The idea is to use an IDREF
- 21:07:55 [fantasai]
- glazou: selector:after { content: element(attr(id)); } or somesuch
- 21:08:31 [fantasai]
- Molly: I look at syntax like this and I just want us to be aware that we might be crossing the understandability line.
- 21:08:39 [smfr]
- sucks to have to add IDs to everything that needs to be reflected
- 21:08:48 [fantasai]
- Molly: The more it looks like programming, the harder it is for visual designers to follow
- 21:09:24 [fantasai]
- fantasai: I think we need to start threads on www-style for all of these
- 21:09:42 [fantasai]
- Tab: It appears from mailing list conversation that element is rendered as a stacking context
- 21:09:53 [fantasai]
- fantasai: real or pseudo?
- 21:09:55 [fantasai]
- Tab: real
- 21:10:28 [fantasai]
- Tab: Do we require that thing is already a stacking context? Draw it as a real stacking context as we draw element()? Or figure out how to work around the issues somehow
- 21:10:39 [fantasai]
- Tab: Need ppl working on rendering engines to comment
- 21:10:45 [fantasai]
- Tab: people like smfr
- 21:10:49 [sylvaing]
- smfr, skype w3c-csswg?
- 21:11:07 [fantasai]
- ACTION: TabAtkins start threads for each issue and track them all
- 21:11:07 [trackbot]
- Sorry, couldn't find user - TabAtkins
- 21:11:08 [smfr]
- don't have skype set up
- 21:11:14 [pcupp]
- http://wiki.csswg.org/spec/css3-grid-layout#issues-for-san-diego-2012-f2f-meeting
- 21:11:36 [fantasai]
- Topic: Grid Layout
- 21:12:58 [smfr]
- oh, right, ick, you'd have to avoid infinite reflections…..
- 21:13:17 [fantasai]
- Tab requests fpwd of css4-images
- 21:13:31 [fantasai]
- szilles: Having a trouble figuring out FPWD criteria here
- 21:14:04 [fantasai]
- szilles: We're not terribly consistent about that.
- 21:14:30 [krit]
- To the referencing of paint servers. The SVG WG is looking into it as well. And we want to point to paint servers in general, also external resources
- 21:15:00 [fantasai]
- fantasai: Think it's that the WG agrees to work on this thing, roughly in the form it's in although there may be many open issues. No objections to the conceptual design
- 21:15:01 [krit]
- Therefore element() should support any IRI like SVG does with fill and stroke already
- 21:15:20 [fantasai]
- szilles: So it has sufficient content that the scope is reasonably clear
- 21:15:36 [fantasai]
- Florian: And the draft is understandable to people outside the WG
- 21:16:20 [fantasai]
- Florian: 1. Scope needs to be clear. 2. We agree on the approach take to solve the problem. 3. Understandable by 3rd parties.
- 21:16:43 [fantasai]
- jdaggett: I would add 4. It's enough of a priority that we should be doing it now.
- 21:16:51 [fantasai]
- jdaggett: Think we should be waiting on things that are lower priority.
- 21:17:39 [dbaron]
- (To be clear, this is a discussion about our general requirements for FPWD.)
- 21:18:02 [fantasai]
- RESOLVED: Publish css4-images FPWD
- 21:18:13 [fantasai]
- RESOLVED: Principles 1-3 for publishing FWPD. No consensus on 4.
- 21:19:20 [fantasai]
- Bert: It's hard to stop people from working on things if that's what they want to do. Can only stop them from publishing. So I like #4, but not sure it makes a difference in practice.
- 21:19:35 [arronei_]
- arronei_ has joined #css
- 21:19:57 [fantasai]
- glazou: Nobody cares about FWPD vs. ED. If we block FPWD, that doesn't have any effect, people will implement ED without FPWD.
- 21:20:17 [dbaron]
- dbaron (before Bert): People criticize us for not getting things done; yet we spend time on whatever anyone brings up.
- 21:20:33 [fantasai]
- plinss: If you feel that group is not managing priorities well, that's a separate discussion.
- 21:21:02 [fantasai]
- Topic: Grid Layout
- 21:21:50 [fantasai]
- fantasai: Let's all thank Phil for being very patient with us for starting late, for discussing other things, and for not having a phone connection.
- 21:22:00 [pcupp]
- can you hear us?
- 21:22:16 [fantasai]
- pcupp: If everyon e looking at wiki link
- 21:22:25 [fantasai]
- pcupp: First topic is [dropped connection]
- 21:22:47 [fantasai]
- pcupp: In hamburg we didn't really talk about why dropping named lines
- 21:22:55 [fantasai]
- pcupp: just said general consensus among editors
- 21:23:01 [fantasai]
- pcupp: Wrote out rationale here
- 21:23:22 [fantasai]
- plinss: Named lines are powerful and useful
- 21:23:26 [fantasai]
- plinss: would object to dropping them
- 21:24:12 [fantasai]
- plinss: Think named lines are very important to grids
- 21:24:16 [dbaron]
- .... . .-.. .-.. ---
- 21:24:27 [fantasai]
- plinss: look at historical usage, have classes of lines, types of lines, naming them is quite important
- 21:24:38 [fantasai]
- plinss: if you want layouts that can adapt quickly without redefining everything from scratch
- 21:24:49 [fantasai]
- plinss: with named lines can just move the lines around and everything just works
- 21:24:53 [fantasai]
- fantasai: We have that with templates.
- 21:25:08 [fantasai]
- Molly: Has everyone read Mark Boulton's blog post on grid issues?
- 21:25:13 [fantasai]
- several: yes
- 21:25:23 [fantasai]
- Molly: Would like to keep language similar to what language designers use
- 21:25:34 [fantasai]
- Molly: discuss takeaways
- 21:25:34 [Koji]
- Koji has joined #css
- 21:25:40 [fantasai]
- pcupp: Two comments
- 21:26:06 [fantasai]
- pcupp: Wrt plinss, agree with fantasai that points made about named lines aliasing capabilities are handled by template
- 21:26:17 [Molly]
- URL for article: http://www.markboulton.co.uk/journal/comments/open-letter-to-w3c-css-working-group-re-css-grids
- 21:26:23 [fantasai]
- pcupp: Template syntax is preferred by editors, including Bert and fantasai
- 21:26:41 [fantasai]
- pcupp: 2nd point from Mark Boulton's post, Bert has a good response to that
- 21:26:54 [fantasai]
- pcupp: In his model, grid sizes are fixed, and content adapts on top of that
- 21:27:05 [fantasai]
- pcupp: But in our grid, the rows and columns can adapt to their contents
- 21:27:27 [fantasai]
- pcupp: Similar to tables, but with more predictable sizing and better placement capabilities
- 21:27:43 [fantasai]
- pcupp: Having read through Mark Boulton's blog post, it doesn't solve the same set of scenarios because using fixed grid
- 21:28:06 [fantasai]
- pcupp: Nomenclature of past grids, originate in print media where don't have fluid layouts: no resizing of the page or dynamic content
- 21:28:20 [fantasai]
- pcupp: Grid that we have addresses more scenarios and I think the template syntax is sufficient aliasing mechanism for that grid
- 21:28:25 [fantasai]
- Molly: I was just concerned with the nomenclature
- 21:28:34 [fantasai]
- Molly: more we have of that, better it is for authors
- 21:28:42 [fantasai]
- pcupp: Wrt nomenclature, we have a bugzilla issue on that
- 21:28:55 [fantasai]
- pcupp: e.g. we have column-gap and column-rule for gutters
- 21:29:00 [fantasai]
- pcupp: There would be a discrepency there
- 21:29:13 [fantasai]
- pcupp: Is it more important to call them gutters, or snap to what's already used in multi-column?
- 21:30:05 [fantasai]
- fantasai: From reading the blog post, the only thing I noticed where we could change things, where the concepts matched and we weren't constrained by existing (e.g. column-gap vs. column-gutter),
- 21:30:13 [fantasai]
- fantasai: was to change "grid area" to "grid field"
- 21:30:33 [fantasai]
- szilles: There are a number of variable-size designs in print design as well, printing onto different pages/cards/etc.
- 21:30:51 [fantasai]
- plinss: There's a long history of grids in print publishing, don't think we should lose that.
- 21:31:01 [fantasai]
- pcupp: I'm not proposing that there isn't such a thing as a grid line
- 21:31:08 [fantasai]
- pcupp: I'm saying that we don't need to give those things names
- 21:31:18 [fantasai]
- pcupp: Because as an aliasing syntax, I think it's poorer than the template syntax
- 21:31:28 [fantasai]
- plinss: You currently specify that you can only have one name existing once
- 21:31:38 [fantasai]
- plinss: Think we should be able to reuse same name over and over across the grid
- 21:31:58 [fantasai]
- plinss: e.g. class lines into "left line" and "right line", and have multiple of these
- 21:32:09 [fantasai]
- plinss: If something gets bumped out of the way, snaps to next line of same class
- 21:32:15 [fantasai]
- plinss: Especially vertically, that's done quite commonly
- 21:32:26 [fantasai]
- plinss: Can avoid collisions and have things snap to lines
- 21:32:34 [fantasai]
- plinss: e.g. snap headlines to a headline line
- 21:32:39 [fantasai]
- plinss: you can't do that without giving an identifier
- 21:32:53 [fantasai]
- jdaggett: Are you saying that you want that feature specced out in this module?
- 21:32:58 [pcupp]
- we just dropped
- 21:33:00 [fantasai]
- plinss: I want that capability in this spec
- 21:33:02 [pcupp]
- hang on
- 21:33:05 [pcupp]
- reconnecting
- 21:33:59 [fantasai]
- fantasai: I think what plinss is asking for is very useful, but it's not what this module is currently about
- 21:34:13 [fantasai]
- fantasai: named lines as they are right now aren't about a snap-to-grid modle
- 21:34:21 [fantasai]
- fantasai: The current model is about positioning into specific slots into the grid
- 21:34:30 [fantasai]
- fantasai: and named lines are a really awkward way to do that.
- 21:34:44 [fantasai]
- pcupp: ...
- 21:34:53 [fantasai]
- pcupp: Not clear why current grid would preclude a snapping feature
- 21:35:54 [fantasai]
- fantasai: I agree we should have snap-to-grid, but that's not what this module is about
- 21:36:12 [fantasai]
- fantasai: Could add it as a different module, one that interacts with this one or reuses some of its syntax, but it would be a different hing
- 21:36:18 [fantasai]
- plinss: I don't what to have two different kinds of grids
- 21:36:33 [fantasai]
- plinss: My proposal is that this grid system do what grids historically have done
- 21:36:38 [fantasai]
- plinss: and think named lines is an important feature
- 21:36:51 [fantasai]
- plinss: think snapping-to-grid feature should be an easy extension of this grid
- 21:37:04 [fantasai]
- Bert: There are different traditions
- 21:37:12 [fantasai]
- Bert: I've seen grids, but not named lines
- 21:37:48 [fantasai]
- plinss: It's not named explicitly, but if the designer draws out the grid the lines are drawn out differently and different things align to different types of lines
- 21:38:00 [fantasai]
- plinss: They're not named because the designer is laying things out manually
- 21:38:18 [pcupp]
- we dropped again
- 21:38:23 [fantasai]
- Tab: How is this different from template positioning?
- 21:38:26 [fantasai]
- plinss: Can't have repetition
- 21:38:39 [fantasai]
- plinss: say I have text flow through multiple boxes
- 21:38:57 [fantasai]
- plinss: want image to snap to nearest available image line, which is different than text-snapping lines
- 21:38:57 [pcupp]
- reconnected
- 21:39:10 [fantasai]
- plinss: This is how grids have historically been used
- 21:39:21 [fantasai]
- szilles: Peter's model doesn't have cells, it has lines.
- 21:39:26 [fantasai]
- plinss: I want a model that doesn't have cells.
- 21:39:47 [fantasai]
- pcupp: Can you have lines that are positioned by content in your model?
- 21:39:57 [fantasai]
- plinss: Historically they have not been used that way.
- 21:40:09 [fantasai]
- plinss: But could.
- 21:40:16 [fantasai]
- plinss: Algorithm is complex, but not that complex.
- 21:40:25 [fantasai]
- pcupp: In algorithm right now, size influences other elements
- 21:40:42 [fantasai]
- pcupp: When you introduce snapping-to-grid feature, then depending on where the item is position it may span more lines
- 21:40:49 [fantasai]
- pcupp: but the lines depend on the sizes of contents inside
- 21:40:52 [fantasai]
- pcupp: so get a cycle
- 21:41:01 [fantasai]
- pcupp: If you have a fixed grid, can have content stretch over it
- 21:41:08 [fantasai]
- pcupp: But doesn't create relationships among contents
- 21:41:24 [fantasai]
- pcupp: e.g. item in here is as wide as all other items in the column
- 21:41:32 [fantasai]
- pcupp: Right now grid track sizes can be driven by content
- 21:41:45 [fantasai]
- pcupp: So grid flexes to fit the content, rather than items flexing to fit the grid
- 21:41:50 [fantasai]
- pcupp: I don't think you can combine these two models.
- 21:41:59 [fantasai]
- plinss: I don't have a mathematical proof of the opposite either
- 21:42:25 [fantasai]
- Florian: Can't you get the model you want by chaining cells using regions, and then pouring content into the regions rather than the cells?
- 21:42:30 [fantasai]
- szilles: no, they're not cells
- 21:42:37 [fantasai]
- szilles: ... offest it to the next line
- 21:42:46 [fantasai]
- szilles: Straight line in sequence of cells
- 21:42:54 [fantasai]
- plinss: Have cells that are overlapping
- 21:43:04 [fantasai]
- plinss: Because going to arbitrary lines for different things
- 21:43:14 [pcupp]
- dropped again
- 21:43:17 [Zakim]
- Zakim has left #css
- 21:43:19 [pcupp]
- reconnecting
- 21:44:07 [fantasai]
- fantasai: So... afaict nobody wants the named lines as they are in the spec now.
- 21:44:13 [fantasai]
- fantasai: We have a desire for a snap-to-grid model.
- 21:44:17 [fantasai]
- plinss: disagree with that
- 21:44:25 [fantasai]
- plinss: I like the named lines as they are in the spec.
- 21:44:30 [fantasai]
- fantasai and Tab think they're horrible
- 21:44:46 [fantasai]
- pcupp: Let's walk thorugh current named lines
- 21:45:22 [stearns]
- link again, in case anyone needs it: http://wiki.csswg.org/spec/css3-grid-layout#issues-for-san-diego-2012-f2f-meeting
- 21:49:48 [fantasai]
- pcupp: First thing that's a little unnatural is template syntax using idents
- 21:49:57 [fantasai]
- pcupp: whereas named lines use strings
- 21:50:05 [fantasai]
- pcupp: This is due to syntactic collisions
- 21:50:08 [fantasai]
- szilles: asks about collisions
- 21:50:08 [fantasai]
- fantasai explains there are two points of collision for named lines:
- 21:50:08 [fantasai]
- with template slots, and within the grid track syntax with size keywords
- 21:50:08 [fantasai]
- pcupp: named lines is 4x as long as the alternative syntax we proposed,
- 21:50:08 [fantasai]
- pcupp: because you need 4 lines, but only one area
- 21:50:15 [pcupp]
- does anyone have a cell phone that we could call?
- 21:50:21 [plinss]
- zakim, room for 3?
- 21:50:48 [pcupp]
- we dropped again
- 21:51:09 [Zakim]
- Zakim has joined #css
- 21:51:09 [fantasai]
- we're attempting to get you back online somehow :)
- 21:51:16 [plinss]
- zakim, room for 3?
- 21:51:18 [Zakim]
- ok, plinss; conference Team_(css)21:51Z scheduled with code 26632 (CONF2) for 60 minutes until 2251Z
- 21:52:28 [Zakim]
- Team_(css)21:51Z has now started
- 21:52:34 [Zakim]
- +??P8
- 21:52:48 [fantasai]
- pcupp: is that problem clear?
- 21:54:04 [fantasai]
- szilles: I just want to move the lines
- 21:54:24 [fantasai]
- plinss: I'm going to move all the lines, and keep things stuck to the lines
- 21:54:41 [fantasai]
- pcupp: did you see in the sample, that by naming lines, we just created a box. Might as well have used a name
- 21:54:44 [fantasai]
- d slot
- 21:54:57 [fantasai]
- szilles: You're focused on creating cells, that's not what plinss is asking for
- 21:55:05 [fantasai]
- pcupp: I just want to put an item into the grid
- 21:55:31 [fantasai]
- discussion of whether overlap is desired
- 21:55:45 [fantasai]
- szilles: You want your figures to bleed into the gutters, but not the text
- 21:55:52 [fantasai]
- pcupp: The grid definitely allows overlapping
- 21:56:01 [fantasai]
- pcupp: The template syntax doesn't allowed named areas to overlap one another
- 21:56:09 [fantasai]
- plinss: You lose that by losing named lines
- 21:56:18 [fantasai]
- pcupp: Seems pretty specialized
- 21:56:20 [fantasai]
- use case
- 21:56:26 [fantasai]
- Bert: I've never seen that
- 21:56:34 [fantasai]
- plinss: I'm talking about boxes wrapping around each other
- 21:56:37 [fantasai]
- Bert: yes, exclusions
- 21:56:44 [fantasai]
- Bert: They don't overlap, they wrap around
- 21:56:51 [fantasai]
- Molly: Wouldn't that be deconstructing the grid?
- 21:57:12 [fantasai]
- Molly: Maybe this is part of the problem. They're thinking about cells too.
- 21:57:22 [fantasai]
- Molly: It's part also of the table legacy
- 21:57:36 [fantasai]
- szilles shows a picture of a grid layout
- 21:58:00 [fantasai]
- one tall box along the left side, intersecting a long horizontal box in the bottom third of the page
- 21:58:16 [fantasai]
- Bert: That's not named lines. That's a specific layout for a particular poster.
- 21:58:25 [fantasai]
- Bert: You're not aligning images to one line and text to another
- 21:58:37 [fantasai]
- Bert: You can do that with the grid, too, but not necessarily the default.
- 21:58:55 [fantasai]
- szilles: We're not saying that you can't use what's in the module right now, but that there are other uses
- 21:59:09 [fantasai]
- plinss: You get the other cases by naming the lines, and thinking of it in terms of lines rather than cells.
- 21:59:14 [fantasai]
- plinss: It's an entirely different mental model.
- 21:59:42 [fantasai]
- plinss: We have a whole bunch of different layout systems that use boxes
- 21:59:48 [fantasai]
- plinss: flexbox, tables, floats
- 21:59:56 [fantasai]
- fantasai: But none of those do 2D alignment. Grid does
- 22:00:00 [fantasai]
- plinss: 2D flexbox
- 22:00:05 [fantasai]
- fantasai: That's what Grid Layout is.
- 22:00:46 [fantasai]
- plinss: Haven't we all used vector drawing program?
- 22:00:58 [fantasai]
- plinss: First thing you do is drag out guide lines, and start laying things out to those lines.
- 22:01:08 [fantasai]
- Tab: Alternative is that main thing grid layout tries to do
- 22:01:19 [fantasai]
- Tab: is take the table-based layout concepts and make them not shitty
- 22:01:23 [fantasai]
- Tab: These are two different use cases
- 22:01:33 [fantasai]
- Tab: You can't just say "put named lines into grid"
- 22:02:05 [fantasai]
- Tab: question is whether named lines should be in this grid module
- 22:02:11 [fantasai]
- Tab: The way they are defined now, no.
- 22:02:50 [fantasai]
- Tab: As they are written right now, as the spec is designed right now -- and I think the model in the spec is a good one --
- 22:02:57 [fantasai]
- Tab: named lines doesn't if it
- 22:03:02 [fantasai]
- s/if it/fit in/
- 22:03:14 [fantasai]
- Tab: we should go and see if we can add a snap-to-grid model
- 22:03:48 [fantasai]
- Tab: Make grid layout work nicely with snap-to-grid
- 22:04:08 [fantasai]
- Florian: Do we need to rename what is currently called grid to something else?
- 22:04:13 [fantasai]
- sylvaing: No, we do that at Last Call.
- 22:04:18 [krit]
- krit has joined #css
- 22:04:30 [fantasai]
- jdaggett: The spec right now is called Grid Layout, we had another one called Grid.
- 22:04:40 [fantasai]
- jdaggett: That was more of a graphic designers view of grid layout
- 22:05:20 [fantasai]
- fantasai: That model was abspos with grid coordinates, had all the collision problems of abspos, didn't have snap-to-grid
- 22:05:50 [fantasai]
- plinss: You need exclusions and you need collison model.
- 22:05:57 [fantasai]
- pcupp: So, where are we now?
- 22:06:20 [fantasai]
- szilles: I'd summarize, we've establishe dclearly that the set of things that szilles and plinss want to do is different from the set of things you want to do
- 22:06:26 [fantasai]
- szilles: Certainly common overlap between the two
- 22:06:37 [fantasai]
- szilles: Haven't established whether it's impossible to do them all in the same model
- 22:06:50 [fantasai]
- plinss: I think we can do this in one model
- 22:07:09 [fantasai]
- jdaggett: We need a concrete action item on someone to write up the functionality that you think is required.
- 22:07:18 [fantasai]
- jdaggett: Having this discussion over again is counter-productive.
- 22:07:21 [fantasai]
- pcupp: Agre
- 22:07:22 [fantasai]
- e
- 22:07:34 [fantasai]
- jdaggett: I'm not objecting to what you're proposing, but we need a proposal that's in more concrete form
- 22:08:30 [fantasai]
- sylvaing: Can we pull what's in the spec out?
- 22:08:38 [fantasai]
- sylvaing: and put an issue to design something new?
- 22:08:58 [fantasai]
- plinss: Been asking for grid people to understand the model I want
- 22:09:07 [fantasai]
- plinss: If we pull the named lines then it'll go the wrong way
- 22:09:19 [fantasai]
- Tab: I don't think you want to patch what you want onto the current named lines
- 22:09:30 [fantasai]
- plinss: I think what we want is going to be different than what we have
- 22:09:35 [fantasai]
- plinss: Otherwise we'll fork the spec
- 22:09:59 [fantasai]
- Tab: What currently exists is not what anybody wants. So we shouldn't have it in the spec. Kill it and go ahead, develop something better that we can put back into the spec
- 22:10:18 [fantasai]
- Tab: Nobody's helped by the thing that's in the spe cright now.
- 22:10:30 [fantasai]
- szilles: as long as I can only define cells between adjacent lines
- 22:10:48 [fantasai]
- szilles: If I can define cells that can span lines, then I can get what I want
- 22:10:54 [fantasai]
- several: You can already do that.
- 22:11:38 [fantasai]
- pcupp: wrt maintainability, it's easier to renumber than to come up with four names per box
- 22:12:12 [fantasai]
- plinss: Problem with current system is that if I make a new grid with different number of lines, because different sized page, I have to go and redefine where everything lands in that grid
- 22:12:33 [Molly]
- q+
- 22:12:36 [fantasai]
- Tab: But you don't. You use a template together. Don't even have to use the template slots, but can use the names created by there to position grid items
- 22:13:21 [fantasai]
- Tab explains how grid template slot names can be used as coordinates
- 22:14:10 [fantasai]
- plinss: If we want to add what plinss wants, it's something completely different from this
- 22:14:41 [fantasai]
- Molly: The problem here is a lot bigger than maybe we even imagine
- 22:14:54 [fantasai]
- Molly: CSS Layout is a bear. Now the concerns I want you to come back to is to ask ourselves who is the customer, who is to user
- 22:15:40 [fantasai]
- Molly: The author is the user. Based on that, the integrity of grids and the long history that designers have, should be maintained by calling it grid. Simultaneously a template is a grid, but more like table model. Grid system is a line system. We have to do this correctly or we end up harming authors more than helping them.
- 22:15:41 [Bert]
- q+ to say that most lines in a grid have multiple functions: the same vertical line delimits text in the first row and images in the second. Finding a name for that line is going to be difficult.
- 22:15:45 [fantasai]
- Tab: So you're saying we shoudl rename the spec
- 22:17:03 [fantasai]
- sylvaing: The grid model here is familiar to anyone who understand tables. Don't understand why that's bad
- 22:17:08 [fantasai]
- jdaggett: model is not as familiar as you think
- 22:17:26 [fantasai]
- jdaggett: This is an *application developer's* model of a grid. It's not a graphic designer's concept of a grid.
- 22:18:33 [fantasai]
- jdaggett: What I do think needs to happen is that Peter and Steve need to iron out a concrete proposal of how to change what's there into what you want.
- 22:18:43 [fantasai]
- sylvaing: Different designers are comfortable with different models
- 22:18:46 [fantasai]
- sylvaing: We need both
- 22:19:02 [fantasai]
- plinss: I believe we can have a unified grid model.
- 22:19:19 [fantasai]
- plinss: That has the functionality page designers want, but allows you to address things the way the spec defines it.
- 22:19:31 [fantasai]
- plinss: I want this unified grid model. I don't want Yet Another layout system
- 22:19:34 [fantasai]
- Florian: How to get there?
- 22:19:55 [fantasai]
- Florian: Should we yank the bit that's currently in the spec, or leave what's there until we either find a replacement or an addition that makes it better?
- 22:20:04 [fantasai]
- plinss: If we yank it now, we've gone down the path of the application grid
- 22:20:26 [fantasai]
- Florian: Maybe the solution you want will replace what's there, maybe add to it
- 22:20:40 [fantasai]
- jdaggett: Let's mark the spec with a big red issue, mark it as under discussion
- 22:21:31 [fantasai]
- Florian: Add an issue next to the bits proposed to be yanked, saying these bits are trying to accomplish [insert description of what plinss] wants. We are still looking for a way to address that problem well.
- 22:21:51 [fantasai]
- Tab: I would not tell our implementers to implement grid lines as they are in the spec
- 22:22:11 [fantasai]
- Tab: Leaving it in leave the spec in a weird state that we have something we *know* we don't want
- 22:22:42 [fantasai]
- jdaggett: I think Tab's arguing that we shouldn't put things in our specs that we know are complete rubbish.
- 22:23:42 [fantasai]
- Tab: I doubt the correct solution is an evolution of the current spec
- 22:24:27 [fantasai]
- Florian^: Should leave work in progress in the spec so people can build on it
- 22:24:52 [fantasai]
- fantasai: What Tab is saying is that anone working on this problem would be better served by a blank slate than starting with what's there.
- 22:25:45 [fantasai]
- plinss: Tab made a point that named lines complicates the model. It doesn't, it only complicates the syntax of addressing the model.
- 22:26:04 [fantasai]
- jdaggett: Can we wrap this up with an action item?
- 22:26:20 [fantasai]
- jdaggett: I'd like an action on Peter and Steve to come up with a concrete proposal.
- 22:27:02 [fantasai]
- ACTION szilles and plinss to describe a line-based layout grid unified model of everything
- 22:27:02 [trackbot]
- Sorry, couldn't find user - szilles
- 22:27:12 [fantasai]
- ACTION pcupp Add note Florian proposes to the spec
- 22:27:13 [trackbot]
- Created ACTION-500 - Add note Florian proposes to the spec [on Phil Cupp - due 2012-08-21].
- 22:27:45 [stearns]
- pcupp: we tried to bring this into the model and failed. we need you to show us the way
- 22:28:13 [fantasai]
- ACTION plinss draft note Florian proposes and send it to pcupp
- 22:28:14 [trackbot]
- Created ACTION-501 - Draft note Florian proposes and send it to pcupp [on Peter Linss - due 2012-08-21].
- 22:28:28 [myakura]
- myakura has joined #css
- 22:56:00 [Zakim]
- disconnecting the lone participant, glazou, in Team_(css)21:51Z
- 22:56:02 [Zakim]
- Team_(css)21:51Z has ended
- 22:56:02 [Zakim]
- Attendees were glazou
- 22:57:12 [myakura]
- myakura has joined #css
- 22:57:16 [drublic]
- drublic has joined #css
- 23:00:03 [fantasai]
- pcupp: Next item...
- 23:00:15 [fantasai]
- pcupp: I have another thing describing anonymous grid items and how we create them
- 23:00:21 [fantasai]
- pcupp: There are some images there that help show this
- 23:00:31 [fantasai]
- pcupp: Current behavior in spec mirrors Flexbox behavior
- 23:00:45 [fantasai]
- pcupp: All children of grid are grid items, loose text is wrapped in anon grid item
- 23:01:07 [fantasai]
- pcupp: A complaint is that these items all stack on top of each other in the first cel
- 23:01:17 [fantasai]
- pcupp: If you turn on auto-flow, you'll get separate grid items that flow into boxes
- 23:01:28 [fantasai]
- pcupp: What we recently discussed on a last telecon, talked about what if we did something different
- 23:01:38 [fantasai]
- pcupp: What if we wrapped all the contents of grid element into one anonymous grid item
- 23:01:51 [fantasai]
- pcupp: and pulled actual grid items out of the flow of the anon one and positioned them
- 23:02:10 [fantasai]
- pcupp: Default grid item could be auto-positioned, or put in 1-1
- 23:02:16 [fantasai]
- pcupp: and so you get third image
- 23:02:32 [fantasai]
- pcupp: Introduced one more idea, what if you use this ocncept of everything in anon item
- 23:02:46 [fantasai]
- pcupp: and allow descendants with grid-pos properties to be pulled out of the flow, not just direct children
- 23:02:55 [fantasai]
- pcupp: fantasai pointed out a point recently, wrt markup
- 23:03:00 [fantasai]
- pcupp: e.g. form elements inside list items
- 23:03:09 [fantasai]
- pcupp: say you wanted labels in 1st column, inputs in 2nd column
- 23:03:22 [fantasai]
- pcupp: what do we do with this remaining markup? does it collapse down to nothing?
- 23:03:33 [fantasai]
- pcupp: With descendants pulled into grid, have this issue
- 23:03:45 [fantasai]
- pcupp: Then the conversation on www-style, fantasai proposed we could deal with this by a new 'display: subgrid'
- 23:03:57 [fantasai]
- pcupp: Then some discussion of pursuing subgrid, or deferring it
- 23:04:19 [fantasai]
- pcupp: Question to WG is, do we address this now, or defer to later level and just try to handle compat later
- 23:04:35 [fantasai]
- s/later/now/
- 23:04:54 [fantasai]
- Tab: I support wrap everything in anonymous grid cell and pull things out
- 23:05:11 [fantasai]
- Tab: I think that also happens to solve the problem of what to do with leftover markup when you pull descendants out
- 23:05:16 [fantasai]
- Tab: goes into anon grid cell
- 23:05:24 [fantasai]
- pcupp: How do we keep it from displaying
- 23:05:42 [fantasai]
- Tab: make anon cell display: none by default
- 23:05:47 [fantasai]
- fantasai: We try not to have things disappear by default
- 23:06:01 [fantasai]
- fantasai: try to have things show up by default
- 23:06:05 [dbaron]
- fantasai: So what you're proposing is that if something's display:grid, then suddenly the things inside it wouldn't show up.
- 23:06:15 [fantasai]
- Tab: Template had default slot concept
- 23:06:23 [fantasai]
- Tab: Could even have that be the default template
- 23:06:57 [dbaron]
- fantasai: Pulling things out into the ancestor and having grid stuff all float together seems like a good idea.
- 23:07:08 [Molly]
- Molly has joined #css
- 23:07:23 [fantasai]
- fantasai: we have a grid-auto-flow property that would let us switch into auto placement
- 23:07:49 [dbaron]
- fantasai: My concern with pulling sub-grids into a later level is that it seems like a lot of markup that we want to lay out with grid has structure to it.
- 23:08:02 [dbaron]
- fantasai: You want several layers of descendants to participatein the same grid and align together.
- 23:08:16 [dbaron]
- fantasai: To use the current level of grid you'd have to strip out that markup, and couldn't have graceful fallback to non-grid layout.
- 23:08:24 [dbaron]
- fantasai: So my concern with deferring it
- 23:08:42 [dbaron]
- fantasai: ... is that if it was possible to add later and still be possible to have sane markup at the current level
- 23:08:47 [dbaron]
- fantasai: ... but I'm concerned that we can't.
- 23:09:01 [dbaron]
- fantasai: Bert brought up -- mail on www-style
- 23:09:37 [dbaron]
- fantasai: <fieldset> <ul> <li> <label> <input> </li> <li> <label> <input> </li> </ul>
- 23:09:46 [dbaron]
- fantasai: you might want to have label and input and put borders around it
- 23:09:52 [dbaron]
- fantasai: [draws]
- 23:10:06 [dbaron]
- fantasai: want to align the labels and the inputs
- 23:10:22 [dbaron]
- fantasai: if you don't have subgrids you can't do that -- you either have to strip out the markup or keep it styled so that it will effectively disappear
- 23:10:37 [dbaron]
- fantasai: so this seems like a sensible common use case for ui grids -- to style intermediary list-item
- 23:10:50 [dbaron]
- Peter: When you use the term sub-grid, you mean children or descendant elements, not grids within grids?
- 23:11:10 [dbaron]
- fantasai: the idea was that display:subgrid behaves like display:grid except that the children are laid out into the same grid as the parent instead of creating new grid lines
- 23:11:19 [dbaron]
- fantasai: but coordinates are scoped and margins and padding are subtracted out
- 23:11:29 [dbaron]
- Steve: Is it a way of changing what the items are?
- 23:11:36 [dbaron]
- fantasai: I should pull up my email...
- 23:11:50 [dbaron]
- Phil: IN fantasai's proposal, she's saying the grid lines are permeating the descendants with display:subgrid
- 23:11:58 [fantasai]
- http://lists.w3.org/Archives/Public/www-style/2012Aug/0310.html
- 23:12:08 [dbaron]
- Phil: It's their children or however far you drill down... it's those items that influence the content-size tracks of the grid.
- 23:12:25 [dbaron]
- Phil: ??? to account for margin / border / padding on ancestor elements by pretending they have larger margin
- 23:12:32 [dbaron]
- Phil: Has great potential, I like the ... .
- 23:12:52 [dbaron]
- Phil: In level 1, is it not a reasonable requirement that people tailor their markup so they have the items at the right level to operate on the right grid level
- 23:12:54 [dbaron]
- ?
- 23:13:12 [dbaron]
- Phil: I don't know why we couldn't add this in a later level of grid.
- 23:13:21 [dbaron]
- Phil: And people need to be able to author markup with subgrid in mind today.
- 23:13:39 [dbaron]
- Phil: The issue isn't about authoring with subgrid in mind; it's about authoring the markup as it should be and then choosing to display it wit hgrid.
- 23:13:49 [dbaron]
- Tab: Example markup in wiki: this kind of thing is very reasonable.
- 23:14:00 [dbaron]
- Tab: The correct way to mark up html that puts the signifcant parts as not children of the grid
- 23:14:12 [dbaron]
- Phil: But in this example I created it to illustrate a problem that exists due to markup structure.
- 23:14:22 [dbaron]
- Phil: But I could have collected labels annd inputs as children of grid.
- 23:14:36 [dbaron]
- Peter: What you would have lost is how these things behave on a client that doesn't support grids
- 23:14:40 [dbaron]
- Tab: or a client without CSS at all?
- 23:14:52 [dbaron]
- Florian: You write the markup because it's the correct way to mark it up, then style it.
- 23:15:10 [dbaron]
- Tab: You sometimes need to adjust your markup some... the question is what's too much in terms of requiring adjustment in markup.
- 23:15:17 [dbaron]
- Tab: Having to flatten all children seems like too much.
- 23:15:35 [dbaron]
- Tab: Case of figure -- pulling out img and figcaption -- can't do that without losing markup connection from <figure>.
- 23:16:07 [dbaron]
- Bert: With example on whiteboard -- issue is how you get a border around 2 things that are individually positioned. That's not just a matter of markup, also the issue of how to make a border around something that's not a single cell.
- 23:16:21 [dbaron]
- fantasai: This isn't an issue about creating pseudo-elements, since it's something that the markup has or should have.
- 23:16:42 [dbaron]
- Phil: One issue about border -- not that I'm saying it's how it should be done -- could be done with layering another element.
- 23:17:00 [dbaron]
- fantasai: But you need to put margins on 3 sides of both things... could get hairy with arbitrary children.
- 23:17:05 [dbaron]
- Tab: Subgrids good for this kind of case
- 23:17:36 [dbaron]
- fantasai: Subgrids work: if I want to position item into a grid... look at children and see how many cells spanning ...
- 23:17:42 [dbaron]
- fantasai: [draws]
- 23:17:56 [dbaron]
- fantasai: take up this many slots in the parent grid
- 23:18:15 [dbaron]
- fantasai: From children's perspective, this is the numbering system, but for parent and numbering system *this* is the positioning system.
- 23:18:37 [dbaron]
- fantasai: children affect sizing of parent grid, except extra margin added to items to account for subgrid's margin/border/padding
- 23:18:46 [dbaron]
- fantasai: That's the idea, and it would solve this problem.
- 23:18:55 [dbaron]
- Bert: I don't understand how it solves this problem.
- 23:19:12 [dbaron]
- fantasai: you'd give the li { display: subgrid }, li would be a grid item inside this grid; the label and the input would be grid items inside the subgrid
- 23:19:26 [dbaron]
- fantasai: the items in the subgrid participate in the parent grid, so [points at drawing]
- 23:20:00 [dbaron]
- Peter: I'm not sure why you need to create the level of subgrids -- couldn't the li be placed in cells and its children be placed in other cells?
- 23:20:12 [dbaron]
- fantasai: The children would then need to know the grid position of its parent
- 23:20:19 [dbaron]
- Peter: So its grid coordinate system is relative to its parent
- 23:20:26 [dbaron]
- Steve: consttraining th erange of auto fill
- 23:20:40 [dbaron]
- Steve: In some sense you're making grid items out of the children, but there's more to it than that.
- 23:21:11 [dbaron]
- fantasai: You're scoping their positioning, and you're taking the distance between margin and content edge of the parent and using it to change the size of the grid cells the items are going into so they stay inside each other geometrically.
- 23:21:43 [dbaron]
- fantasai: As Phil said, you can do the same thing manually by manually computing the right positions and the right extra margins on the items. But you have to track row/column and amount of margin.
- 23:22:03 [dbaron]
- Steve: I'm unclear how the border gets done
- 23:22:09 [dbaron]
- fantasai: you just put a border on the li -- it's there
- 23:22:11 [dbaron]
- Steve: ah, ok
- 23:22:24 [dbaron]
- Phil: So if everybody understands that -- back to the original question
- 23:22:32 [dbaron]
- Phil: So Tab wants to see it in level 1.
- 23:22:43 [dbaron]
- Phil: The more we try to solve in level 1 the further it is from being stable
- 23:22:55 [dbaron]
- Phil: We'd like to have a version of the spec to point to that reflects what we have in the marketplace
- 23:23:16 [dbaron]
- Tab: I'm fine with subgrid being in level 2. I don't think it's required for basic grid functionality. But I think being able to pull descendants out for your grid is necessary functionality.
- 23:23:37 [dbaron]
- Tab: ... there are required or recommended markup patterns in HTML that prevent you from flattening children
- 23:23:46 [dbaron]
- Phil: [missed]
- 23:24:01 [dbaron]
- Phil: ... could solve it in another way... what do we do with the semantic markup, maybe a mechanism for hiding it or something?
- 23:25:19 [dbaron]
- s/[missed]/I was coupling the subgrid solution fantasai proposed with the solution for what we do with the solution for leftover semantic markup, and I'm hearing Tab say we could defer subgrid and find other solutions for the semantic markup/
- 23:25:33 [dbaron]
- fantasai: I'm not sure I'm comfortable with that
- 23:25:42 [dbaron]
- Phil: I'm not sure what that solution is; could take an action item
- 23:25:49 [dbaron]
- Phil: I'd prefer not to tie that to level 1 at all.
- 23:26:08 [dbaron]
- fantasai: Not sure if I full-on object to that, but afraid people will do bad things to their markup.
- 23:26:19 [dbaron]
- Tab: subgrid or descendants being pulled in?
- 23:26:29 [dbaron]
- fantasai: pulling good; concern is about subgrid
- 23:26:47 [dbaron]
- fantasai: Concern about people doing weird things to their markup to make alignment happen, impact a11y etc, bad markup practices.
- 23:27:05 [dbaron]
- Phil: To be clear, I was talking about pulling descendants as a whole.
- 23:27:29 [dbaron]
- fantasai: I think that's something you can't turn on in the future because it would break existing content because of random grid positioning properties on descendants.
- 23:27:45 [dbaron]
- fantasai: Could create a positioned-grid value required to pull descendants and turn it on that way
- 23:27:53 [dbaron]
- tab: I'm concerned about contortion of markup patterns
- 23:28:18 [dbaron]
- tab: I think the solutions to do pulling desceendants without subgrid are hacky on CSS side but won't encourage contortion of markup
- 23:28:22 [dbaron]
- fantasai: I think they both will
- 23:28:31 [dbaron]
- Phil: What about flexbox?
- 23:28:41 [dbaron]
- fantasai: We didn't have use cases for pulling descendants into the main flexbox
- 23:28:46 [dbaron]
- q+
- 23:29:04 [dbaron]
- Tab: can also address all of those use cases by making the wrapper a flexbox as well... and that's not true of grid
- 23:29:12 [dbaron]
- fantasai: because of the laignment across both dimensions
- 23:29:13 [dbaron]
- q-
- 23:29:31 [dbaron]
- Phil: ok, so we're resolved to continue pursuing descendant solution, but not requiring subgrids as part of that solution?
- 23:29:34 [dbaron]
- Tab: That's what I want?
- 23:29:39 [dbaron]
- fantasai: I want to hear from other people
- 23:29:41 [dbaron]
- s/?/./
- 23:29:42 [myakura]
- myakura has joined #css
- 23:29:56 [dbaron]
- Steve: Weak approx to subgrid called honor-descendants
- 23:30:13 [dbaron]
- Steve: Have to explicitly say I want to say descendants positions should be interpreted, but I don't get extra mechanisms of subgrid
- 23:30:20 [dbaron]
- Tab: That solves problem of stray grid positioning
- 23:30:34 [dbaron]
- Tab: But it doesn't solve problem of people having to distort their markup right now to flatten everything into being children of the grid
- 23:30:40 [dbaron]
- Steve: I thought I'm turning it on so I didn't have to flatten.
- 23:30:45 [dbaron]
- Steve: Treat my children as being me.
- 23:30:50 [dbaron]
- Tab: So you're saying do that right now?
- 23:31:00 [dbaron]
- Steve: I'm saying to do that right now is a way of doing the descendants thing.
- 23:31:22 [dbaron]
- Tab: I don't think we have a problem with needing to be explicit right now. The reason to need to be explicit is if we're delaying it for the future.
- 23:31:30 [dbaron]
- Bert: why need a property at all?
- 23:31:41 [dbaron]
- Florian: We only need it if we introduce it later, and thus it needs to be opt-in
- 23:31:46 [dbaron]
- Bert: but the default should be on
- 23:31:48 [dbaron]
- Tab, Florian: yes
- 23:31:54 [dbaron]
- Steve: But it doesn't interact with subgrids?
- 23:32:17 [dbaron]
- Tab: We can patch this by saying that if a particular descendant wants to escape out -- still future-friendly for subgrid.
- 23:32:43 [dbaron]
- fantasai: I don't dispute that -- my concern is markup on whiteboard (input/label) -- people want to put border around input/label pairs -- and have that markup structure, e.g., for non-CSS reasons.
- 23:32:52 [dbaron]
- fantasai: Fact that we can't handle that right now without really being hacky
- 23:33:01 [dbaron]
- Bert: As long as you don't want image borders...normal borders you can do.
- 23:33:09 [dbaron]
- Bert: 3 borders on left cell and 3 borders on right cell
- 23:33:17 [dbaron]
- fantasai: label inside there... input has its own borders
- 23:33:28 [dbaron]
- Tab: People could hack it into working just with CSS
- 23:33:39 [dbaron]
- Tab: What are you concerned people will do to their markup to help that.
- 23:33:42 [dbaron]
- s/./?/
- 23:33:53 [dbaron]
- fantasai: Not sure, but I think it would be pretty ugly.
- 23:34:32 [dbaron]
- Bert: Another worry with subgrid: if you suddenly take margins into account,things don't line up anymore. The label is no longer left-aligned to the frist grid line because there's a margin in-between. So if it's 100% it's 100% of something else -- the left over space -- not the grid.
- 23:34:45 [dbaron]
- Tab: The leftover space, given the grid and the extra margin. It will still work as long as we define it correctly.
- 23:34:56 [dbaron]
- Bert: I think it will be difficult to design because of subtracting margins.
- 23:35:05 [dbaron]
- fantasai: If you didn't want the space then you wouldn't put any padding there
- 23:35:24 [dbaron]
- Bert: But you're already putting the label within a grid cell, so you'd expect it to line up with the grid cell and not be influenced by something else.
- 23:35:46 [dbaron]
- Tab: As long as we craft the spec correctly, we can all make it work correctly -- even if you're pushed in on the left your right edge will still line up with the grid.
- 23:36:50 [fantasai]
- ...
- 23:37:10 [fantasai]
- dbaron: I think what Tab is saying that is if you didn't want the subgrid to cause things to not be lined up with the parent grid, then don't put margins/borders/padding on it
- 23:37:14 [fantasai]
- dbaron: And then it will ine up
- 23:37:21 [fantasai]
- dbaron: But if you do put margin/padding/border, we honor them
- 23:37:41 [dbaron]
- Bert: it works out -- but you're assigning things to the same grid column and they don't line up. That's confusing.
- 23:37:47 [dbaron]
- Tab: That's the actual functionality of subgrids.
- 23:38:00 [dbaron]
- Steve: If you don't put margins on the li, then it lines up.
- 23:38:02 [dbaron]
- Tab: yes.
- 23:38:15 [dbaron]
- Steve: You have the option of getting more indent.
- 23:38:49 [dbaron]
- fantasai: I think we should resolve on doing descendants going up into grid, mark subgrid as something to think about.
- 23:39:32 [fantasai]
- RESOLVED: descendants of grids can be positioned into the grid as part of Level 1, mark subgrids as an issue to think about
- 23:39:52 [dbaron]
- fantasai: Do we want to have that happen with position:grid, or just happen if your row or column is non-auto?
- 23:40:04 [dbaron]
- Tab: Oh, key it to something else like position:grid?
- 23:40:18 [dbaron]
- Phil: I think I like the row-or-column-is-non-auto.
- 23:40:34 [dbaron]
- Phil: Sorry, I think we'd need to introduce new value like none for grid-row or grid-column
- 23:40:50 [dbaron]
- Tab: You want most of your descendants to not do anything special
- 23:40:53 [dbaron]
- fantasai: Initial value would be none.
- 23:41:22 [dbaron]
- Phil: For chlidren of grid, in anonymous default grid item, would need to give them grid-row/column: auto
- 23:41:43 [dbaron]
- fantasai: Disadvantage: If you want to turn on auto positioning you'd need to turn those all to auto *and* turn on auto positioning
- 23:41:51 [dbaron]
- Tab: alternative is to make nonen compute to auto for children of grid
- 23:41:55 [dbaron]
- varous: no
- 23:42:07 [dbaron]
- s/varous/various/
- 23:42:10 [dbaron]
- s/nonen/none/
- 23:42:28 [fantasai]
- fantasai: so looks like either we can have descendants be positioned into the grid if they're non-auto row/col, or we can have auto-positioning be a single switch, but not both
- 23:42:37 [fantasai]
- fantasai: so we need to think about that
- 23:43:06 [dbaron]
- Steve: Had a question about default cell: why do you want to throw away the content if it's group into this default ...?
- 23:43:11 [dbaron]
- fantasai: I don't think we want to do that.
- 23:43:20 [dbaron]
- Tab: I just think we may want to allow you to throw away the content.
- 23:43:33 [dbaron]
- Tab: I'd prefer if it didn't make anything disappear until you actually position some children.
- 23:43:37 [dbaron]
- Tab: need to make sure that works properly
- 23:43:53 [dbaron]
- Bert: More generic problem there: in many cases there are things you want to throw away even though the children of the thing should still be displayed
- 23:44:09 [dbaron]
- Bert: We might want to have something that throws away everything except things that really want to be displayed.
- 23:44:14 [dbaron]
- Bert: useful for collapsing lists
- 23:44:24 [dbaron]
- fantasai: visibility:collapse but done right?
- 23:44:46 [dbaron]
- Phil: Next issue is the shorthand naming.
- 23:44:54 [dbaron]
- Phil: We added a bunch of new shorthands into latest ED.
- 23:45:32 [dbaron]
- Phil: I think we're pretty happy with names -- discussion about what used to be grid-rows and grid-columns -- now grid-definition-rows and grid-defintion-columns -- to make them more distinct from grid-row and grid-column.
- 23:45:41 [dbaron]
- Phil: Some suggestion of grid-row-tracks and grid-column-tracks instead
- 23:45:46 [dbaron]
- Phil: suggestions?
- 23:46:01 [dbaron]
- Tab: I agree with renaming -- grid-row vs. grid-rows was bad.
- 23:46:07 [dbaron]
- Tab: Not super-happy with grid-definition-rows
- 23:46:31 [dbaron]
- Phil: Recommended process for resolving on names?
- 23:46:42 [Bert]
- q+ to suggest grid-columns and grid rows for definitions, grid-area for positioning.
- 23:46:43 [dbaron]
- fantasai: Brainstorm for a bit, straw poll. If nothing good, try again later?
- 23:46:53 [dbaron]
- ack Bert
- 23:46:53 [Zakim]
- Bert, you wanted to suggest grid-columns and grid rows for definitions, grid-area for positioning.
- 23:47:05 [dbaron]
- Bert: grid-columns and grid rows for definitions, grid-area for positioning
- 23:47:16 [dbaron]
- Tab: I think grid-area is shorthand for all 4 at once
- 23:47:24 [dbaron]
- Bert: Could say there are no individual property and just use shorthand.
- 23:47:35 [dbaron]
- fantasai: I think there are use cases for longhand, esp. with auto positioning.
- 23:47:45 [dbaron]
- Tab: [rapidly-described use case combinatorics]
- 23:47:53 [dbaron]
- Bert: They always have an x and a y position anyway.
- 23:48:00 [dbaron]
- Tab: I think it's useful to do x and y separately.
- 23:48:04 [fantasai]
- Tab: e.g. say all of these are in this column, this one's in this row, that's in that row, the other's in the other row
- 23:48:09 [dbaron]
- Steve: Instead of putting extra word in the definition, put it in the use?
- 23:48:19 [dbaron]
- fantasai: Problem with that is that it's the one you're going to type the most.
- 23:48:23 [dbaron]
- Bert: I think that's not the case.
- 23:48:32 [dbaron]
- Bert: I think you're going to use the positioning less than the definition.
- 23:48:44 [dbaron]
- Bert: Most grids will not be used with positioned elements not elements that are flowing.
- 23:48:51 [dbaron]
- Bert: So you don't need explicit x and y wery often.
- 23:48:55 [dbaron]
- Tab: Don't know about this.
- 23:49:18 [dbaron]
- Tab: I think that resaonably commonly -- grid-area works -- but still quite reasonable and reasonably common to do x and y positions separately.
- 23:49:30 [dbaron]
- fantasai: Another position was grid-template-rows/columns/slots for the template.
- 23:49:50 [dbaron]
- Bert: I like shorthand shorter: grid not grid-template.
- 23:49:59 [dbaron]
- Tab: Nice ideas, make sure they get pulled into brainstorming thread.
- 23:50:08 [dbaron]
- Phil: There was a side discussion during break, with tab fantasai peter steve bert.
- 23:50:25 [dbaron]
- Phil: Did you settle on something? Did you decide to remove named lines?
- 23:50:50 [dbaron]
- Steve: There were 2 decisioins I could recall. Nobody was in favor of curent syntax, but were in favor of model. Discussion about whether that meant to remove syntax or not.
- 23:50:56 [dbaron]
- Steve: Consensus that syntax improvement was needed.
- 23:51:16 [dbaron]
- Tab: One of us should put together beter syntax for name dlines
- 23:51:45 [dbaron]
- Steve: peter gave an example of usage of lines that acts as illustration of issue Peter actioned to work on: being able to delete a named line and having the positioning default in a useful and predictable way.
- 23:52:08 [dbaron]
- Steve: ... so that you can do media queries to set up grid and where the lines fall fall out in a natural way, and you don't have to rewrite a lot of your code for each media queries.
- 23:52:12 [dbaron]
- Phil: ok, I think I heard those
- 23:52:31 [dbaron]
- Tab: Useful part: can we remove the current syntax because we're going to do better and soon?
- 23:52:44 [dbaron]
- Steve: If we can come up with something in aweek we'd certainly put the new syntax in.
- 23:52:57 [dbaron]
- [Tab still wants the old syntax out, but gives in]
- 23:53:06 [dbaron]
- Phil: I'm just going to wrap up with status:
- 23:53:15 [dbaron]
- Phil: ... updates recently to grid. Template property now taking identifiers.
- 23:53:28 [dbaron]
- Phil: ... automatic placement algorithm updated based on discussion with fantasai -- forward only, no backfilling
- 23:53:32 [dbaron]
- Phil: ... new shorthands just mention
- 23:53:43 [dbaron]
- Phil: ... next steps: editors work on descendant piece, work on gutters
- 23:53:57 [dbaron]
- Phil: ... not sure if this was implied -- we also plan to pull in column/row-rule with column/row-gap
- 23:54:05 [dbaron]
- Phil: ... and issues in bugzilla we'll start working on.
- 23:55:09 [fantasai]
- ....
- 23:55:20 [fantasai]
- Discussion of what to discuss
- 23:55:29 [fantasai]
- jdaggett: We would like to not ship this prefixed.
- 23:55:37 [fantasai]
- Tab: Neither do we
- 23:55:58 [fantasai]
- jdaggett: So we should keep this to the absolute minimal spec, because whatever's there, we won't have a chance to fix anything
- 23:56:08 [fantasai]
- Florian: Can we decide on what we're talking about first?
- 23:57:11 [fantasai]
- discussion of scheduling constraints
- 23:58:25 [fantasai]
- and how long to discuss prefixes
- 23:59:14 [fantasai]
- Topic: Variables
- 23:59:19 [fantasai]
- Tab: I can do variables in half hour!
- 00:00:53 [fantasai]
- Tab spends half an hour erasing the board.
- 00:00:55 [fantasai]
- (j/k)
- 00:01:06 [fantasai]
- Tab: Question is what features to preserve in the draft and how to call them
- 00:01:12 [fantasai]
- Tab: Right now variables are created witha property
- 00:01:16 [fantasai]
- Tab: Few different ways to handle this
- 00:01:33 [fantasai]
- Tab: Right now they're declared as property declarations.
- 00:01:38 [fantasai]
- Tab: property name options
- 00:01:39 [fantasai]
- var-foo
- 00:01:41 [fantasai]
- $foo
- 00:01:42 [fantasai]
- my-foo
- 00:01:44 [fantasai]
- user-foo
- 00:01:48 [fantasai]
- Tab: 3 ways to use a variable
- 00:01:54 [fantasai]
- Tab: prop: $foo
- 00:02:12 [fantasai]
- Tab: prop: var(foo [, fallback])
- 00:02:18 [fantasai]
- Tab: use var function with optional fallback
- 00:02:29 [fantasai]
- Tab: Option to do something when var isn't defined or is invalid, very useful functionality
- 00:02:34 [fantasai]
- Tab: other function is parent-var()
- 00:02:43 [fantasai]
- Tab: which does the same thing, but checks the variable value on your parent
- 00:02:52 [fantasai]
- Tab: Less than 1 week ago would suggest moving to $foo
- 00:03:04 [fantasai]
- Tab: Now I don't, because I think there's some interesting solutions
- 00:03:14 [fantasai]
- Tab: partially due to dbaron's selector idea and some conversations with fantasai
- 00:03:37 [fantasai]
- Tab: So think we should not go with $foo syntax
- 00:03:56 [fantasai]
- Tab: I want to do something like SASS's extend, or what dbaron proposed, which needs a very compact thing
- 00:04:03 [fantasai]
- Tab: This why I don't want to use that syntax right now
- 00:04:12 [fantasai]
- Tab: I want to leave us with these two functions var() and parent-var(), as written
- 00:04:25 [fantasai]
- Tab: and keep what's there for var declarations
- 00:04:31 [fantasai]
- Tab: maybe one of the other options suggestion
- 00:04:35 [fantasai]
- Florian: I'm happy with this proposal
- 00:04:45 [fantasai]
- jdaggett: When you're using the variable, what's the syntax
- 00:04:56 [fantasai]
- Florian: That was the way initially proposed to the group
- 00:05:01 [fantasai]
- Rossen: it's good
- 00:05:33 [fantasai]
- fantasai: I think it's good that the basic use is consistent with the more complex uses
- 00:05:46 [fantasai]
- jdaggett: I don't like the syntax, but $foo keeps the stylesheet a lot more tight
- 00:05:56 [fantasai]
- Molly: People are already familiar with $foo
- 00:06:02 [fantasai]
- jdaggett: It also causes confusion because it's a shell variable
- 00:06:10 [fantasai]
- jdaggett: But having compact notation is important
- 00:06:16 [fantasai]
- Tab: I think that's a decent argument against it
- 00:06:27 [fantasai]
- Tab: Because in preprocessors, it behaves very differently
- 00:06:34 [fantasai]
- Tab: In SASS etc. they are pretty much macros
- 00:06:48 [fantasai]
- Tab: They're global variables, can do replacement anywhere for anything
- 00:07:01 [fantasai]
- Tab: I think we want something similar to what SASS etc. do, but this isn't that
- 00:07:14 [fantasai]
- Florian: Our variables are different, so we shouldn't match their syntax
- 00:07:24 [fantasai]
- Tantek: Heard request from jdaggett for fully-written-out examples
- 00:07:28 [fantasai]
- Tab: i nthe spec
- 00:08:05 [fantasai]
- glazou: Last time we mentioned $foo, someone mentioned ppl behind the processors were willing to change their own $foo if we were ready to accept it for CSS
- 00:08:09 [fantasai]
- Tab: That's still the case
- 00:08:14 [fantasai]
- glazou: So why don't we use $foo
- 00:08:19 [fantasai]
- Tab: First of all, they can't match us entirely.
- 00:08:27 [fantasai]
- Tab: They can only do so in restricted cases, would be very confusing
- 00:08:39 [fantasai]
- Tab: You can't do it without severe hacking
- 00:08:57 [fantasai]
- Florian: They can change their syntax to match or not match ours. They can't change their behavior to match ours.
- 00:09:19 [fantasai]
- fantasai: Because we use the cascade and inheritance, and they do simple string substitution
- 00:09:47 [fantasai]
- plinss: That only saves us collision with SASS. Doesn't save us the confusion in minds of authors.
- 00:10:09 [fantasai]
- Florian: None of the existing languages that use $foo for denote variables ...
- 00:10:22 [fantasai]
- glazou: We still need a way to express parent-var, and with $ you can't
- 00:10:32 [fantasai]
- Tab: I want to reserve our use of $ for something similar
- 00:10:52 [fantasai]
- Tab: Where you can do variables for Selectors, and there a very short glyph-based thing like $foo is necessary, whereas less necessary in CSS value
- 00:11:19 [fantasai]
- Florian: I think we're going to take some flames for it, but we should go this way
- 00:11:42 [fantasai]
- Tantek: I'm going to go with your recommendation, and publish with that, and if it really is that objectionable to the authoring community we will hear about it very loudly from them.
- 00:11:52 [fantasai]
- Tantek: I'd rather have that debate there than here.
- 00:12:05 [fantasai]
- Tantek: Let's go with your judgement, and if authoring community has unified force against that, they we can reconsider.
- 00:12:14 [fantasai]
- szilles: Besides, you can always use SASS to replace the $foos.
- 00:12:48 [fantasai]
- fantasai: I agree with Molly that we need a very clear blog post explaining why we are deciding this way
- 00:13:16 [fantasai]
- jdaggett: I think it is important to talk about thie inheritance model
- 00:13:31 [fantasai]
- jdaggett: It needs to be in the forefront that this is not a macro replacement mechanism.
- 00:13:34 [fantasai]
- Tab: Cool
- 00:13:44 [fantasai]
- Tab: In the FPWD, all we had was var-foo and var(foo)
- 00:13:52 [fantasai]
- Tab: We couldn't specify fallback, and didn't have parent-var()
- 00:13:59 [fantasai]
- Tab: Are these acceptable in Level 1
- 00:14:13 [fantasai]
- Tab: They could be deferred, but are sufficiently simple and useful that could be part of Level 1
- 00:14:33 [fantasai]
- jdaggett: I really think for this level, since we aren't going to be behind a prefix for X months, we should keep this to a minimum.
- 00:14:44 [fantasai]
- jdaggett: In particular I don't like parent-var(), because it feels like an experiment
- 00:14:55 [fantasai]
- jdaggett: The things it's useful for, might be better ways to do it.
- 00:15:08 [fantasai]
- jdaggett: I think there's going to be little pockets of places where it will be difficult to get interop
- 00:15:26 [fantasai]
- jdaggett: I'm not saying I oppose the feature, but for Level 1, get the simplest functionality out there
- 00:15:35 [fantasai]
- Tab: I'm ok with deferring parent-var(), but really want to keep fallback
- 00:15:55 [fantasai]
- glazou: How about add a note explaining parent-var(), as "in the future we may consider this"
- 00:16:15 [fantasai]
- dbaron: So, I sortof have mixed feelings about this
- 00:16:23 [fantasai]
- s/this/dropping parent-var/
- 00:16:30 [fantasai]
- dbaron: on onehand, I'm not crazy about the name parent-var()
- 00:16:40 [fantasai]
- dbaron: On the other hand, it seems trivial to implement once you have all the rest
- 00:16:49 [fantasai]
- dbaron: Although maybe I'm missing something
- 00:16:54 [fantasai]
- glazou: I think you're right it is very simple
- 00:17:06 [fantasai]
- glazou: I think web authors using variables will need more, parent-var() is only the first step
- 00:17:17 [fantasai]
- Tab: On one hand I have several use cases really awesome for parent-var in the spec
- 00:17:27 [fantasai]
- jdaggett: There may be many example,s but maybe that's not the right set
- 00:17:36 [fantasai]
- jdaggett: If we stake a claim on parent-var, everything else has to fit in
- 00:17:48 [fantasai]
- glazou: If it's simple to implement, can do Level 2 in a snap
- 00:18:01 [fantasai]
- Tab: ... grab property value from the parent and use the value in your stuff
- 00:18:08 [fantasai]
- dbaron: that's a can of worms
- 00:18:28 [fantasai]
- Tantek: I hear what you're saying, John, but rather than entertain that as a hypothetical possibility, invert that into a challenge
- 00:18:35 [fantasai]
- Tantek: Provide the use cases for other possibilities
- 00:18:48 [fantasai]
- Tantek: I think we should include it based on commentary that has been made
- 00:18:55 [fantasai]
- jdaggett: Keep in mind this is not prefixed
- 00:19:08 [fantasai]
- tantek: 2nd, we have a notion of variables in one place, which is the font-size
- 00:19:17 [fantasai]
- tantek: You can refer to font-size of yourself or parent in a few places
- 00:19:33 [fantasai]
- tantek: Nobody's come and said "I want font size of grandparent"
- 00:19:39 [fantasai]
- dbaron: we have rem now
- 00:19:51 [fantasai]
- Tantek: but probably safe to go with just parent-var
- 00:19:57 [fantasai]
- Florian: I say we go with L1 without parent
- 00:20:05 [fantasai]
- Florian: Then make a L2 quickly that just has parent
- 00:20:34 [fantasai]
- Florian: have the discussion about parent-var there
- 00:20:39 [fantasai]
- tantek: ...
- 00:20:47 [fantasai]
- jdaggett: This is going to spread like wildfire once it's implemented
- 00:21:17 [fantasai]
- Tab: I'm fine with this. Fine with doing small drafts that advance quickly.
- 00:21:32 [fantasai]
- glazou: Tantek, I would agree with you if it was going to take awhile, but this is small and fast
- 00:22:26 [fantasai]
- RESOLVED: Syntax of variables settled on var-foo and var(foo)
- 00:22:46 [fantasai]
- ACTION: TabAtkins, fantasai, and glazou to write blog post explaining why not using $
- 00:22:46 [trackbot]
- Sorry, couldn't find user - TabAtkins,
- 00:23:00 [fantasai]
- RESOLVED: Include fallback in Level 1
- 00:23:10 [fantasai]
- RESOLVED: Defer fallback to Level 2
- 00:23:46 [fantasai]
- RESOLVED: Accept Variables L2 with parent-var() as work item
- 00:24:07 [dbaron]
- fantasai: I don't think we should go to LC yet; want to get a few weeks of feedback in response to this WD.
- 00:25:15 [fantasai]
- jdaggett: I want that sentence changed. He knows which sentence.
- 00:25:52 [fantasai]
- RESOLVED: Publish WD of CSS Variables providing sentence jdagget objects to is removed.
- 00:27:17 [fantasai]
- plinss: Who is building a test suite for Variables?
- 00:27:24 [fantasai]
- jdaggett: dbaron has already started
- 00:27:39 [fantasai]
- Tab: I'm going to expand that more, because I need to write test suites for 3 different specs I'm in charge of
- 00:29:37 [fantasai]
- s/Defer fallback/Defer parent-var/
- 00:30:19 [fantasai]
- Meeting closed.
- 00:30:49 [dbaron]
- $ hg ci -m"Switch syntax from $test to var(test)." .
- 00:30:56 [dbaron]
- summary: Switch syntax from to var(test).
- 00:43:57 [tantek]
- tantek has joined #css
- 00:47:51 [jdaggett]
- jdaggett has joined #css
- 01:03:43 [pcupp]
- pcupp has joined #css
- 01:30:20 [myakura]
- myakura has joined #css
- 01:45:20 [arronei_]
- arronei_ has joined #css
- 01:53:02 [glenn]
- glenn has joined #css
- 02:10:07 [jet]
- jet has joined #CSS
- 02:27:39 [pcupp]
- pcupp has joined #css
- 02:38:38 [jet]
- jet has left #CSS
- 02:46:34 [jet]
- jet has joined #CSS
- 02:53:42 [glenn]
- glenn has joined #css
- 03:05:46 [tantek]
- tantek has joined #css
- 03:23:15 [leaverou]
- leaverou has joined #css
- 03:27:49 [shepazu]
- shepazu has joined #css
- 03:30:50 [myakura]
- myakura has joined #css
- 03:54:18 [glenn]
- glenn has joined #css
- 04:38:29 [arronei_]
- arronei_ has joined #css
- 04:45:26 [tantek]
- tantek has joined #css
- 04:49:15 [miketaylr]
- miketaylr has joined #css
- 04:54:58 [glenn]
- glenn has joined #css
- 05:31:08 [myakura]
- myakura has joined #css
- 05:40:46 [dbaron]
- dbaron has joined #css
- 06:07:41 [drublic]
- drublic has joined #css
- 06:50:01 [glenn]
- glenn has joined #css
- 06:50:19 [Ms2ger]
- Ms2ger has joined #css
- 07:03:12 [tantek]
- tantek has joined #css
- 07:31:34 [myakura]
- myakura has joined #css
- 07:57:49 [drublic]
- drublic has joined #css
- 08:49:21 [glenn]
- glenn has joined #css
- 09:00:06 [jarek]
- jarek has joined #css
- 09:05:07 [macpherson_]
- macpherson_ has joined #css
- 09:15:43 [macpherson__]
- macpherson__ has joined #css
- 09:17:59 [macpherson_]
- macpherson_ has joined #css
- 09:28:39 [macpherson__]
- macpherson__ has joined #css
- 09:32:02 [myakura]
- myakura has joined #css
- 09:50:06 [glenn]
- glenn has joined #css
- 09:53:36 [myakura]
- myakura has joined #css
- 10:50:44 [glenn]
- glenn has joined #css
- 11:06:20 [leaverou]
- leaverou has joined #css
- 11:12:05 [decadance]
- decadance has joined #css
- 11:51:23 [glenn]
- glenn has joined #css
- 12:28:40 [Zakim]
- Zakim has left #css
- 12:29:19 [shepazu]
- shepazu has joined #css
- 12:39:10 [leaverou]
- leaverou has joined #css
- 12:52:03 [glenn]
- glenn has joined #css
- 13:26:11 [myakura]
- myakura has joined #css
- 13:52:43 [glenn]
- glenn has joined #css
- 14:00:57 [jet]
- jet has joined #CSS
- 14:05:06 [arronei_]
- arronei_ has joined #css
- 14:10:26 [miketaylr]
- miketaylr has joined #css
- 14:11:38 [miketaylr]
- miketaylr has joined #css
- 14:21:36 [jet_]
- jet_ has joined #CSS
- 14:46:01 [jet]
- jet has joined #CSS
- 14:46:47 [glenn]
- glenn has joined #css
- 14:47:29 [tantek]
- tantek has joined #css
- 15:03:52 [krit]
- krit has joined #css
- 15:23:28 [jet_]
- jet_ has joined #CSS
- 15:32:26 [jet]
- jet has joined #CSS
- 15:42:21 [dbaron]
- dbaron has joined #css
- 15:51:04 [florian]
- florian has joined #css
- 15:52:51 [glazou]
- glazou has joined #css
- 15:53:01 [Zakim]
- Zakim has joined #css
- 15:53:21 [glazou]
- RRSAgent, make logs public
- 15:53:29 [glazou]
- rrsagent, this meeting spans midnight
- 15:55:32 [glenn]
- glenn has joined #css
- 15:56:46 [lstorset]
- lstorset has joined #css
- 15:59:19 [SteveZ]
- SteveZ has joined #css
- 16:00:31 [TabAtkins_]
- TabAtkins_ has joined #css
- 16:01:47 [cabanier]
- cabanier has joined #css
- 16:10:01 [TabAtkins_]
- ScribeNick: TabAtkins_
- 16:10:42 [TabAtkins_]
- Topic: Prefixing Policy
- 16:10:46 [glazou]
- Topic: Prefixes
- 16:11:13 [TabAtkins_]
- dbaron: I thinkt he first thing is that we shouldn't think of it as a prefixing policy, but rather as an "experimental features" policy.
- 16:11:22 [TabAtkins_]
- dbaron: Because the right solution may not involve prefixes.
- 16:11:28 [TabAtkins_]
- Topic: Experimental Features Policy
- 16:11:35 [TabAtkins_]
- florian: Two rpoblems with the current policy.
- 16:11:42 [TabAtkins_]
- florian: There's no clear good way for authors to use it.
- 16:11:50 [TabAtkins_]
- florian: And not even just clear - I think there's no good way at all.
- 16:12:05 [TabAtkins_]
- florian: A common "best practice" is to list all the vendors followed by the unprefixed, which lets you write your site and forget about it.
- 16:12:13 [TabAtkins_]
- florian: This matches most author's workflow.
- 16:12:20 [TabAtkins_]
- sylvaing: Until we renamed things.
- 16:12:28 [TabAtkins_]
- florian: Yeah, but if we dont' change things, that works.
- 16:12:41 [TabAtkins_]
- tantek: I think your first statement was flawed.
- 16:12:58 [TabAtkins_]
- tantek: I think that "making it work" isn't necessarily something the WG should be committing to, if it's experimental.
- 16:13:17 [TabAtkins_]
- florian: There is no good way to use these, so people use them in bad ways.
- 16:13:35 [TabAtkins_]
- glenn: Modernizr helps make this less painful, right?
- 16:13:47 [TabAtkins_]
- tantek: This is why I think that David's way of reframing the problem is useful.
- 16:14:03 [TabAtkins_]
- florian: the things that we consider "experimetnal" are being used.
- 16:14:24 [TabAtkins_]
- florian: And with the current way we prefix things, there's no good way to use it, thus they do it in bad ways.
- 16:15:01 [TabAtkins_]
- glazou: Note that when browsers introduce a new experimental feature, they don't say it as an "experimental" feature - it's just a feature!
- 16:15:17 [TabAtkins_]
- glazou: "Now you can do border-foo!"
- 16:15:19 [fantasai]
- sylvaing: Authors are using it because it's in production releases
- 16:15:33 [TabAtkins_]
- florian: This is true, but I think we should be careful about drawing conclusions from it.
- 16:15:38 [tantek]
- tantek has joined #css
- 16:15:56 [TabAtkins_]
- florian: If we refrain from shipping too many half-ready things, we get around the issue, but we harm the competitivity of either the browsers doing it, or the platform as a whole.
- 16:16:54 [TabAtkins_]
- tantek: I think that Daniel's point is important, and calls to attention that we don't just have experimetnal features, we also have vendor-specific features, that are being shipped.
- 16:17:03 [krit]
- krit has joined #css
- 16:17:11 [TabAtkins_]
- tantek: And the vendors are saying "you can use this, because we will support this". And this is a different class of problems.
- 16:17:22 [fantasai]
- sylvaing^: Is it really experimental if we have multiple browsers shipping interoperable implementations?
- 16:17:34 [TabAtkins_]
- tantek: Sometimes vendor-specific features are loved by we bauthors and then the WG has to figure out how to spec it, and that's similar to experimental, but usually they're separate.
- 16:18:09 [TabAtkins_]
- florian: I want to be careful about calling these things "vendor-specific". If apple introduces something that is meant to write the UI of itunes, or Moz introduce something meant for the UI of Firefox, etc., this is vendor-specific.
- 16:18:39 [TabAtkins_]
- florian: But if you write a feature that you have no particular intent to share with other brwosers, but you serve it from arbitrary web servers to arbitrary brwosers, this is not vendor-specific.
- 16:19:03 [TabAtkins_]
- florian: Opera has no reason to try and implement the things for iTunes, but it needs to implement the things used on iPhone, because they're exposed.
- 16:19:22 [TabAtkins_]
- tantek: I think that problem has been previously characterized as "once you'veleaked it to the web".
- 16:19:40 [TabAtkins_]
- hober: canvas, for instance.
- 16:19:46 [TabAtkins_]
- tantek: Once you've leaked it, you can't take it back.
- 16:19:58 [TabAtkins_]
- florian: For those things that aren't meant to hit the web at all, it's fairly easy to define the policy for them.
- 16:20:23 [TabAtkins_]
- hober: A bit difficult, because there may be an initial use for a proeprty - it's specialized for a certain client - but after they work with it, it turns out to have general applicability.
- 16:20:36 [TabAtkins_]
- hober: So I think it'll prove difficult to use a different mechanism for the two cases.
- 16:20:51 [TabAtkins_]
- florian: I think that if something's not meant for the web, it just shouldn't be exposed to the web at all.
- 16:21:10 [TabAtkins_]
- florian: If you later think you should expose it to the web, you can flip that switch later.
- 16:21:28 [TabAtkins_]
- florian: If you have a context switch that lets you hide it from the browser when it's in "web mode", we'd avoid a lot of issues.
- 16:21:45 [TabAtkins_]
- florian: They should probably be prefixed, to avoid accident collisions with WG stuff.
- 16:22:12 [TabAtkins_]
- glazou: I'm not sure there's a firm line. Standalone web apps are becoming more prevalent. Nobody knew initially that iTunes was built in web stuff.
- 16:22:13 [hober]
- Of course, vendor-prefixed properties get created for several different purposes. see https://lists.webkit.org/pipermail/webkit-dev/2010-July/013534.html
- 16:22:49 [TabAtkins_]
- glazou: Hiding stuff behind a pref isn't going to happen, or only for a few months until the standalone app is turned into a web app.
- 16:23:11 [TabAtkins_]
- glazou: The proprietary CSS extensions we know of, only the ones designed for *very specific* things, like for MS word, don't eventually hit the web.
- 16:23:29 [TabAtkins_]
- dbaron: There are plenty of vendor-prefixed things that haven't taken off.
- 16:23:43 [TabAtkins_]
- glazou: Sure, but these are the no-question things. Others, vendors may at least consider it.
- 16:23:57 [TabAtkins_]
- tantek: What do you mean by "things for ms word dont' eventually hit the web"?
- 16:24:08 [TabAtkins_]
- glazou: The -mso- stuff never even considered to hit the web.
- 16:24:26 [TabAtkins_]
- tantek: You can find tons of mso prefixes on the web.
- 16:24:38 [TabAtkins_]
- glazou: Yes, but no one ever implemented them, or even intended to.
- 16:24:58 [TabAtkins_]
- florian: I think you're not disagreeing with me - if you create mso or itunes things, and you initially isolate them...
- 16:25:16 [TabAtkins_]
- florian: If someone else realizes they're not specialized and would be generally useful, someone can bring them to the WG.
- 16:25:25 [TabAtkins_]
- glazou: *If* someone brings them to the WG. People don't do that.
- 16:25:51 [TabAtkins_]
- jdaggett: About the mso stuff, that's just "gluck". The presence of a prefixed property in public isn't indicative that it's meaningful.
- 16:26:19 [karl]
- karl has joined #css
- 16:26:33 [dbaron]
- TabAtkins: a problem you brought up is that we are making things exposde to the public without bringing them to the WG
- 16:26:47 [TabAtkins_]
- sylvaing: Can't do it.
- 16:26:52 [TabAtkins_]
- glazou: It's a problem of strategy.
- 16:27:20 [karl]
- RRSAgent, pointer?
- 16:27:20 [RRSAgent]
- See http://www.w3.org/2012/08/13-css-irc#T16-27-20
- 16:27:22 [TabAtkins_]
- sylvaing: People have public bits they don't want to expose.
- 16:27:53 [TabAtkins_]
- TabAtkins_: That means that browsers are using the web and the WG as a means to bless their actions after they've blasted the web, so they retain first-mover advantage.
- 16:28:04 [Rossen]
- Rossen has joined #css
- 16:28:09 [TabAtkins_]
- leif: The WG can bring things up on their own, yes.
- 16:28:28 [fantasai]
- sylvaing^: It's a matter of corporate disclosure
- 16:29:07 [TabAtkins_]
- sylvaing: Sometimes it's not even mentioned. There are things in W8 that aren't even mentioned - just using CSS.
- 16:29:19 [TabAtkins_]
- jdaggett: Some of these are proprietary proeprties - not really intended to be part of CSS.
- 16:29:27 [TabAtkins_]
- jdaggett: And that's part of the problem. Authors dont' see that distinction.
- 16:29:53 [TabAtkins_]
- jdaggett: Many marketing departments - there's a tendency to take feature X with a prefix on it and say that it's part of CSS3, even if the only thing that backs that up is a blog post or a private draft.
- 16:29:59 [sylvaing]
- s/mentioned/submitted yet
- 16:30:33 [TabAtkins_]
- florian: MS has probably extended CSS to make Metro UIs possible. Some of these features may be intended for the WG later, but not yet ready; others may not be intended for the web at all.
- 16:30:45 [TabAtkins_]
- florian: For the ones not intended for the web at all, I say just dont' expose them at all.
- 16:31:06 [TabAtkins_]
- florian: For the others that you intend to be on the web, it would be useful to ship them (because you have to), but not expose them to the web.
- 16:31:21 [TabAtkins_]
- florian: This is similar to iTunes, and other types of things.
- 16:31:38 [TabAtkins_]
- florian: So what happens when you actually expose things to the web.
- 16:32:42 [TabAtkins_]
- florian: As long as you don't, you should have them prefixed, so that whatever ends up on the web (a standardized version of it, or something independent with the same name), we don't get name collisions between these two.
- 16:33:03 [TabAtkins_]
- florian: Which the web doesn't care abuot, but the private app would stop working if a same-named feature started doing something else.
- 16:33:22 [TabAtkins_]
- szilles: So I think you're saying that we own the unprefixed space, and anyone else must prefix.
- 16:33:46 [TabAtkins_]
- florian: I think whether or not random people introducing random things to the web should or shouldn't prefix is a separate question.
- 16:33:58 [TabAtkins_]
- florian: But for the things that *aren't* meant for the web, don't expose them, and prefix them.
- 16:34:35 [TabAtkins_]
- glazou: Again, I think the idea to "don't expose them to the web" is unworkable. More apps move to webapps.
- 16:34:50 [TabAtkins_]
- glazou: I don't think it'll happen. Browsers will want to expose them to the web sot hey can write webapps.
- 16:35:28 [TabAtkins_]
- plinss: I think it's reasonable for webkit to understand epub stuff, but only when reading epub files. Not when doing normal web content.
- 16:35:47 [TabAtkins_]
- glazou: When I'm downloading a random epub file from the web, should it or not render epub properties?
- 16:36:03 [TabAtkins_]
- florian: If you can recognize it as epub...
- 16:36:13 [TabAtkins_]
- glazou: There's no difference between epub and a random html file.
- 16:36:40 [jdaggett]
- jdaggett has joined #css
- 16:36:41 [TabAtkins_]
- hober: I think it's unreasonable to expect epub authors to have a different workflow than regular html workflows.
- 16:37:08 [TabAtkins_]
- plinss: If it cant' tell, it can't tell. But if it can tell one way or the other, do or don't respect epub properties.
- 16:37:22 [TabAtkins_]
- glazou: I don't think that's reasoanble. Right now on the web you have some epub readers. They're just webapps.
- 16:37:32 [TabAtkins_]
- jdaggett: You're advocating a bad idea.
- 16:37:52 [TabAtkins_]
- glazou: Not advocating - describing.
- 16:38:27 [TabAtkins_]
- jdaggett: You're saying that any group that wants to create their own flavor of HTML or CSS, those things are their own entity. Whether any particular UA shows it in the way that's intended is a private matter.
- 16:38:37 [TabAtkins_]
- szilles: Browsers aren't the only thing that can display web content.
- 16:38:46 [TabAtkins_]
- szilles: They may accept different things than what the browser accepts.
- 16:38:58 [TabAtkins_]
- szilles: If those other things become popular enough, there may be pressure to adopt what they do.
- 16:39:17 [TabAtkins_]
- szilles: So I'm hearing daniel say that it's a market force that we cant' do anything about.
- 16:39:37 [TabAtkins_]
- sylvaing: In W8, we try to have a clean separation between web and app.
- 16:39:55 [TabAtkins_]
- sylvaing: But quickly, the Facebooks and Netflixes of the world, just build an app with a web container.
- 16:40:10 [TabAtkins_]
- sylvaing: And quickly they want the full set of things that apps can do.
- 16:40:29 [Koji]
- Koji has joined #css
- 16:40:32 [TabAtkins_]
- florian: But at that point we get to the point where you're deciding that things are appropriate for the web, not just for siloed content.
- 16:40:42 [TabAtkins_]
- jdaggett: I think the epub process is a perfect example of how we should not try and act.
- 16:41:03 [TabAtkins_]
- jdaggett: Where you take a laundry list of features that someone says they want, and stick it into a document with no attempt to distill or worry about interactinos or do the hard work.
- 16:41:36 [TabAtkins_]
- tantek: Regarding epub - I think they're a great example of the *reality* tha other groups will try to extend or fork the web platform.
- 16:41:59 [TabAtkins_]
- tantek: Before epub we had chtml, though that's an example of something that died.
- 16:42:03 [TabAtkins_]
- tantek: Other groups will try to extend.
- 16:42:15 [TabAtkins_]
- tantek: We can try to outcompete them, or we can get outcompeted.
- 16:42:30 [TabAtkins_]
- glazou: Epub is a nice extensions because they have public documents detailing everything.
- 16:42:46 [TabAtkins_]
- hober: epub tried to track us as well as they could, given our schedule, and they tried to be good actors in this case.
- 16:42:49 [TabAtkins_]
- glazou: yes, it's a good case.
- 16:42:57 [TabAtkins_]
- glazou: It's not the best thing to do, but they tried to do good.
- 16:43:18 [TabAtkins_]
- dbaron: They had a schedule, and no intention of putting in enough resources to meet that schedule properly.
- 16:43:29 [TabAtkins_]
- szilles: I think it's important that such experiments are identified as such.
- 16:43:50 [TabAtkins_]
- szilles: But I think we should adopt a "fast follow" appraoch, so that when something looks important, we can produce a similar version of it.
- 16:44:16 [TabAtkins_]
- szilles: Not necessarily idetnical - one of the problems with the fast actors is that they often don't think about interactions,w hich slows us down.
- 16:44:35 [TabAtkins_]
- jdaggett: It isn't just a matterof slow and burearcratic, as tantek puts it - it's just a damned hard problem.
- 16:45:01 [TabAtkins_]
- glazou: It can be fast and agile and not disclosed because of competitive reasons.
- 16:45:18 [TabAtkins_]
- tantek: Often burearcracy and process has gotten in our way historically.
- 16:45:24 [TabAtkins_]
- tantek: We're aware of and trying to fix that problem.
- 16:45:59 [TabAtkins_]
- jdaggett: Prioritization si crucial.
- 16:46:17 [TabAtkins_]
- jdaggett: If we aren't prioritizing the right thing, if we're spending lots of time on exotic things here an there, that's a problem.
- 16:46:24 [TabAtkins_]
- florian: I think it magnifies the problem - it's not a root cuase.
- 16:46:53 [TabAtkins_]
- szilles: I think making it possible for us to do fast follow is how we should address this problem, not changing the way we identify things.
- 16:47:07 [TabAtkins_]
- szilles: How we label is a red herring.
- 16:47:12 [smfr]
- smfr has joined #css
- 16:47:13 [TabAtkins_]
- plinss: It alleviates some of the pressure.
- 16:47:27 [TabAtkins_]
- plinss: There's no disagreement in the group that thigns come up that we need to work on more aggressively.
- 16:47:54 [TabAtkins_]
- glazou: From my perspective the problem is about getting the technical information about a property impld by one of the members and not yet disclosed, such as text-size-adjust.
- 16:48:05 [TabAtkins_]
- tantek: People brought up a bunch of examples.
- 16:48:21 [TabAtkins_]
- fantasai: Examples: text-size-adjust was not disclosed and became super-popular
- 16:48:38 [TabAtkins_]
- fantasai: border-radius, microsoft's grid layout proposal...
- 16:48:50 [TabAtkins_]
- fantasai: Looking at different ones of these, you'll make different suggestions about what's best.
- 16:49:01 [TabAtkins_]
- fantasai: border-radius - why have prefixes? We all did the same.
- 16:49:18 [TabAtkins_]
- fantasai: grid layout - if MS shipped what they had unprefixed, we'd have had no chance to fix the problems in it.
- 16:49:30 [TabAtkins_]
- fantasai: So we shouldn't focus on justone of these problems, we should look at all of them.
- 16:49:36 [TabAtkins_]
- fantasai: Like T&A is more of a border-radius case.
- 16:49:51 [TabAtkins_]
- tantek: More general examples.
- 16:49:59 [TabAtkins_]
- tantek: There was the UI example - UI of iTunes or Firefox.
- 16:50:20 [TabAtkins_]
- florian: Slight break - we don't all agree on the exact details of the problem, but we all have a shared idea of what it is generally.
- 16:50:36 [TabAtkins_]
- florian: So rather than get the details more, let's talk about solutions and see if it turns out good.
- 16:50:43 [TabAtkins_]
- fantasai: Starting proposal!
- 16:50:45 [TabAtkins_]
- fantasai: Section A.
- 16:50:58 [TabAtkins_]
- fantasai: If it's not web-ready, ship it prefixed and don't expose it to the web.
- 16:51:04 [TabAtkins_]
- Section B.
- 16:51:13 [TabAtkins_]
- fantasai: For standards-track features, ship only in non-release builds.
- 16:51:29 [TabAtkins_]
- fantasai: ...unprefixed.
- 16:51:59 [TabAtkins_]
- fantasai: If another browser ships a release and we have some level of good interop and we think it's a good idea, everyone ship as release.
- 16:52:35 [TabAtkins_]
- dbaron: The way another browser "ships a release" is by breaking these rules in the first place.
- 16:53:04 [TabAtkins_]
- fantasai: If three browsers total implement (non-shipping) and we have interop and think it's a good idea, everyone ship.
- 16:53:40 [TabAtkins_]
- fantasai: Maybe if it's not a solid spec and we dont' have a testsuite, but we're still forced to ship, ship both prefixed and unprefixed so authors can turn things off that are broken in a particular impl.
- 16:53:57 [TabAtkins_]
- glazou: This does not solve the text-size-adjust problem.
- 16:54:37 [TabAtkins_]
- szilles: What problem does this solve?
- 16:54:56 [TabAtkins_]
- TabAtkins_: The bit where we have multiple prefixed versions living for a while and making authors lives hard.
- 16:55:21 [TabAtkins_]
- szilles: In order to do that, you still need a test suite and therefore why not go through the process we have now.
- 16:55:48 [TabAtkins_]
- florian: If you want to test *strict* interop, you need a test suite. If you just need a rough idea, you don't need that - subjecive judgements are possible.
- 16:55:49 [tantek]
- q+
- 16:56:24 [plinss]
- ack tantek
- 16:56:30 [TabAtkins_]
- tantek: Response to steve - what we ahve seen with T&A&transforms, these exampels have disproven your statement.
- 16:56:43 [TabAtkins_]
- tantek: In practice, we have not needed a testsuite to get itnerop, as evidenced by author adoption.
- 16:56:58 [TabAtkins_]
- tantek: if they weren't "sufficiently interoperable", authors wouldn't be using them so much.
- 16:57:03 [TabAtkins_]
- tantek: This is a pretty strong bar.
- 16:57:23 [TabAtkins_]
- glazou: "perceived interop", not "interop".
- 16:57:37 [TabAtkins_]
- szilles: My concern is that, left to the vendors to declare interop, this won't work.
- 16:57:49 [TabAtkins_]
- szilles: Marketing departments have a strong idea to do that.
- 16:58:06 [TabAtkins_]
- plinss: I don't think anyone is suggesting that a single vendor declaring interop is sufficient.
- 16:58:33 [TabAtkins_]
- plinss: I think the current process we have, where someone suggests we have sufficient interop and then asks the group for unprefix, is sufficient.
- 16:58:42 [TabAtkins_]
- dbaron: But we did that with TTA, and the group said no the first time.
- 16:59:03 [TabAtkins_]
- florian: When we asked the group "can we release TTA", we were aiming for a different level of interop.
- 16:59:05 [dbaron]
- hmmm, maybe I'm misremembering and thinking of something else
- 16:59:19 [TabAtkins_]
- florian: We were asking for full interop. We're now not shooting for that - we want "sufficient interop".
- 16:59:19 [tantek]
- dbaron - no you're remembering correctly
- 16:59:28 [fantasai]
- no, the first time we decided not to unprefix, largely because MS did not want to
- 16:59:29 [tantek]
- we asked to unprefix TTA in Paris in February and were told no
- 16:59:40 [tantek]
- I'm sure we can look that up in the minutes
- 16:59:40 [fantasai]
- and then when they decided to unprefix, that gave us consensus in the WG
- 16:59:55 [TabAtkins_]
- florian: Now, between these two stages, you shoudl ship prefixed *and* unprefixed, so individual authors can use the unprefixed if it works for them, and provide brwoser-specific styles using prefixes to work around problem in specific browsers.
- 17:00:07 [TabAtkins_]
- glazou: I'm seeing two cases.
- 17:00:17 [TabAtkins_]
- glazou: I don't think that this process is the difficult one.
- 17:00:42 [TabAtkins_]
- glazou: I think the hard one is the browser vendor developing a proprietary feature and then everyone else discovers it by surprise,a nd we have to implement.
- 17:00:55 [TabAtkins_]
- florian: If text-size-adjust was released under this process, it would not be in a webkit prefix.
- 17:01:24 [TabAtkins_]
- florian: It would put us in mostly the same difficulty as now, except that browsers who decided to implement it wouldn't be forced to implement it with a webkit prefix, which is today's situation.
- 17:01:39 [TabAtkins_]
- florian: This system doesn't prevent the bad things from happening, but it untaints them.
- 17:01:53 [TabAtkins_]
- florian: All the things we're trying to do with text-size-adjust now, we'd mostly have to do anyway. It won't go away.
- 17:02:03 [TabAtkins_]
- florian: But at least we're not stuck witht he webkit prefix name that everyone has to support.
- 17:02:12 [TabAtkins_]
- florian: It's not fantastic, but it's an improvement.
- 17:02:31 [TabAtkins_]
- tantek: There's a bunch of different problems ehre.
- 17:02:47 [TabAtkins_]
- tantek: I like the proposal as developed. It doesnt solve all the problems, but it soles all of them.
- 17:02:58 [dbaron]
- q+
- 17:03:07 [TabAtkins_]
- florian: I think it doesn't solve all of them, but it solves some of them better than the current world.
- 17:03:38 [TabAtkins_]
- szilles: If you publish anything unprefixed before you have a reasonable belief that it's reasonably interoperable, you're going to get uninteroperable things, and it will become unusable.
- 17:03:46 [tantek]
- s/soles all of them/solves some of them well enough/
- 17:04:08 [TabAtkins_]
- szilles: Or everyoen will follow the bad design.
- 17:04:23 [TabAtkins_]
- TabAtkins_: The reality is that everyone follows the bad design *and* puts a webkit prefix on it.
- 17:04:38 [TabAtkins_]
- szilles: But it prevents us from doing better under a better name.
- 17:04:54 [tantek]
- "if it works, the author will use the unprefixed version because it's shorter typing"
- 17:04:59 [tantek]
- -Szilles
- 17:05:21 [TabAtkins_]
- glenn: A random remark - I noticed a posting that "the point of the vendor prefix is to assert the instability of a feature".
- 17:05:48 [TabAtkins_]
- glazou: A corollaorya of that is that purely proprietary things shouldnt' use a prefix.
- 17:05:58 [TabAtkins_]
- dbaron: I don't think we should try to come up with a master plan for the future.
- 17:06:04 [TabAtkins_]
- dbaron: We should be figuring out how to adjust what we're doing.
- 17:06:13 [TabAtkins_]
- dbaron: And I think it will require continued adjustment in the future.
- 17:06:16 [dbaron]
- ack dbaron
- 17:06:18 [TabAtkins_]
- dbaron: We won't do it all today.
- 17:06:28 [Ms2ger]
- s/corollaorya/corollary/
- 17:06:28 [TabAtkins_]
- dbaron: I think a few directions in which we should be adjusting things...
- 17:06:34 [TabAtkins_]
- dbaron: (1) ship less prefixed stuff on the web
- 17:06:41 [TabAtkins_]
- dbaron: (2) unprefix things faster when we get interop
- 17:07:02 [TabAtkins_]
- florian: I think we need to acknowledge that not everyone will follow the policy.
- 17:07:14 [TabAtkins_]
- florian: This will happen, so our policy shoudl just not make things worse when this happens.
- 17:07:37 [TabAtkins_]
- hober: Note that dbaron's #2 is something we can do right now withotu changing policies.
- 17:07:40 [tantek]
- "when we get interop" - what level of interop? authors vs. test suites
- 17:07:52 [TabAtkins_]
- fantasai: Actually, the current policy is just the "legacy content" excuse.
- 17:07:57 [TabAtkins_]
- fantasai: That's what we used for TTA.
- 17:08:21 [tantek]
- TabAtkins: for the one issue of let's unprefix faster, let's formally adopt Elika's stated proposal (from dbaron)
- 17:08:31 [tantek]
- szilles: I can live with that
- 17:09:04 [TabAtkins_]
- glenn: That's reminiscent of the knowledge that Maciej required for CR-exit.
- 17:09:09 [tantek]
- s/knowledge/language
- 17:09:12 [TabAtkins_]
- glenn: For HTML.
- 17:09:29 [TabAtkins_]
- szilles: I like that it's not individual manufacturers making that decision.
- 17:09:47 [TabAtkins_]
- tantek: One thing I'llr aise is that one recent RFC deprecated the use of x-.
- 17:09:56 [hober]
- glenn was referring to this email: http://lists.w3.org/Archives/Public/public-html/2012Aug/0190.html
- 17:09:58 [TabAtkins_]
- tantek: But they drew a strong line between vendor-specific and experimental features.
- 17:10:06 [TabAtkins_]
- tantek: They think that using x- for vendor-specific still works.
- 17:10:15 [TabAtkins_]
- tantek: But not for experimental, because in the end everyone implemented it anyway.
- 17:10:23 [TabAtkins_]
- tantek: So let's consider that work and analysis done by IETF.
- 17:11:06 [TabAtkins_]
- plinss: Let me assert that, while learning from IETF is useful, we might not want to follow them exactly - they have a different problem space.
- 17:12:00 [TabAtkins_]
- TabAtkins_: So are there standing objections to fantasai's proposal?
- 17:12:27 [mmielke]
- mmielke has joined #css
- 17:12:30 [TabAtkins_]
- glazou: No objection, but I'd like to see it written otu formally in an email, as it's nearly unreadable here in the minutes.
- 17:12:55 [TabAtkins_]
- [consensus]
- 17:13:10 [TabAtkins_]
- glazou: We'll post to email, and formally resolve in a few days if there are no objections.
- 17:13:39 [TabAtkins_]
- Topic: Fonts
- 17:15:25 [glenn]
- s/Maciej required for/Maciej suggests for permissive version of/
- 17:15:28 [dbaron]
- http://people.mozilla.org/~jdaggett/tests/simplekerningligs.html
- 17:15:34 [TabAtkins_]
- jdaggett: I wanted to talk about default font features.
- 17:15:39 [TabAtkins_]
- jdaggett: We talked aboutit a bit on the call.
- 17:15:52 [TabAtkins_]
- jdaggett: People seemed comfortable, but there were some concerns fromMS developers.
- 17:15:54 [dbaron]
- also, https://groups.google.com/group/mozilla.dev.platform/msg/6107b1b7bd4fb799?dmode=source&output=gplain&noredirect was my earlier proposal on experimental features
- 17:15:59 [TabAtkins_]
- jdaggett: So we'll quickly review.
- 17:16:18 [TabAtkins_]
- jdaggett: [shows demo]
- 17:16:28 [dbaron]
- alternate link for that is https://groups.google.com/forum/?fromgroups#!topic/mozilla.dev.platform/itl6mtx2dxI[1-25]
- 17:16:31 [TabAtkins_]
- jdaggett: This is showing raw text with no kerning or ligatures, and the second line is FF default, with ligatures and kerning.
- 17:16:41 [TabAtkins_]
- florian: The default is influence by data coming fromthe font?
- 17:16:52 [TabAtkins_]
- jdaggett: No, there is a set of features that are declared as "default" in the OT spec.
- 17:17:25 [TabAtkins_]
- jdaggett: Because FF is turning these on by default, the fourth line and the second line match.
- 17:17:52 [TabAtkins_]
- jdaggett: However, if we go over to Chrome, the default case is different from the random-feature case.
- 17:18:10 [TabAtkins_]
- jdaggett: The internal reason for this is that there's a different rendering path with differetn defaults.
- 17:18:21 [TabAtkins_]
- jdaggett: I'm saying that the default case should be the same as the random-feature case.
- 17:18:33 [TabAtkins_]
- jdaggett: So that turning on a random feature shouldn't also turn on random other features.
- 17:18:55 [TabAtkins_]
- jdaggett: [shows comparative screenshot]
- 17:19:08 [TabAtkins_]
- jdaggett: What this shhows is language-sensitive features.
- 17:19:26 [TabAtkins_]
- jdaggett: In turkish there is a dotted and dotless i. So when you do small caps, you need to put a dot on the i to be correct.
- 17:19:44 [TabAtkins_]
- jdaggett: This is specified with a language tag. This gets sent downt ot he font engine, and that handles things correctly.
- 17:19:53 [TabAtkins_]
- jdaggett: In IE10, this works correctly, but it's not yet implemented in webkit.
- 17:20:03 [TabAtkins_]
- jdaggett: But weird behavior in IE10 for another feature.
- 17:20:11 [TabAtkins_]
- jdaggett: In serbian, this glyph should be a localized alternate.
- 17:20:32 [TabAtkins_]
- jdaggett: But if you turn on a randomf eature, FF gives you the same thing, but in IE10 all of a sudden the localized feature appears.
- 17:21:01 [TabAtkins_]
- glenn: So the algorithm used by the UA to enable the OT advanced tables is different in different brwosers.
- 17:21:08 [TabAtkins_]
- jdaggett: Yes, but I'm saying there shouldn't be side-effects from random features.
- 17:21:30 [TabAtkins_]
- florian: So either everyone should match FF and keep the default features on, or they shouldn't turn on the default at all unless they're epxlicitly asked for.
- 17:21:34 [glenn]
- s/brwosers/browsers/
- 17:21:44 [TabAtkins_]
- sylvaing: (1) there is no font-feature-settings - what features are on by default? That's a difference.
- 17:21:59 [TabAtkins_]
- sylvaing: (2) when you do ask for a specific font feature, do you get just that, or do other things pop up?
- 17:22:16 [TabAtkins_]
- jdaggett: If we go to the OT spec...
- 17:22:20 [TabAtkins_]
- jdaggett: It's a bit scattered.
- 17:22:28 [TabAtkins_]
- jdaggett: These are the default features,a cross scripts.
- 17:22:36 [TabAtkins_]
- jdaggett: Some specific scripts have extra features by default.
- 17:22:38 [dbaron]
- http://people.mozilla.org/~jdaggett/tests/default-feature-list.html
- 17:22:49 [TabAtkins_]
- jdaggett: [describes the table]
- 17:23:14 [dbaron]
- http://people.mozilla.org/~jdaggett/tests/simpleccmptest.html
- 17:23:24 [TabAtkins_]
- jdaggett: [shows tone marks using one fo the default OT features]
- 17:23:45 [TabAtkins_]
- jdaggett: This works in Chrome too, which shows that though they're not enabling the features by default, they have some logic that is turning on this feature when they show up.
- 17:24:07 [TabAtkins_]
- sylvaing: Do you have a ref to the OT spec?
- 17:24:18 [TabAtkins_]
- jdaggett: In CSS3 Fonts, section 7, there are several links in the text.
- 17:24:32 [TabAtkins_]
- szilles: Which spec? ISO or MS?
- 17:24:35 [TabAtkins_]
- jdaggett: Loosely-defined.
- 17:24:43 [TabAtkins_]
- jdaggett: ISO is a file-format spec - it doesn't cover layout.
- 17:24:51 [TabAtkins_]
- jdaggett: So we have to be a bit looser about what we consdier "the spec".
- 17:24:55 [glenn]
- http://www.microsoft.com/typography/otspec/
- 17:24:59 [TabAtkins_]
- jdaggett: Hopefully they'll be more rigorous in the future.
- 17:25:16 [glenn]
- ISO/IEC 14496-22 "Open Font Format" standard. The standard was published in 2007, and is now freely available for download from ITTF website. OpenType version 1.6 is identical to the “Final Draft International Standard” version of ISO/IEC 14496-22 FDIS “Open Font Format” (second edition).
- 17:26:01 [miketaylr]
- miketaylr has joined #css
- 17:26:43 [TabAtkins_]
- sylvaing: Our default rendering is consistent across the windows platform
- 17:26:54 [TabAtkins_]
- jdaggett: So if you could review this list and suggest changes, would be great.
- 17:27:00 [TabAtkins_]
- jdaggett: I think we're covered here.
- 17:27:14 [TabAtkins_]
- florian: If I'm following you right, there are three ways of doing this.
- 17:27:18 [glenn]
- http://www.microsoft.com/typography/otspec/featuretags.htm
- 17:27:22 [TabAtkins_]
- florian: One is the Chrome/MS way, which is not ideal.
- 17:27:30 [TabAtkins_]
- florian: Another is the Firefox, which may require an extra switch.
- 17:27:32 [TabAtkins_]
- jdaggett: Let me finish.
- 17:27:45 [TabAtkins_]
- jdaggett: The features in the list in red are those which can be controlled.
- 17:27:54 [TabAtkins_]
- jdaggett: ...via font-variant-ligatures.
- 17:28:09 [TabAtkins_]
- jdaggett: I've put in a "none" value to font-variant-ligatures which turns off all defaults.
- 17:28:36 [TabAtkins_]
- jdaggett: That will not disable the requried features.
- 17:28:47 [TabAtkins_]
- jdaggett: These are usually specialized features that are *needed* for correct rendering of various things.
- 17:29:11 [TabAtkins_]
- glenn: How would someone shut down the rlig feature?
- 17:29:19 [TabAtkins_]
- jdaggett: font-feature-settings: rlig 0;. It's possible.
- 17:29:59 [TabAtkins_]
- jdaggett: I was going to put in an example of this showing a use-case of seeing the individual characters in Arabic, but I don't want to explain how to shut these things down easily.
- 17:30:06 [TabAtkins_]
- jdaggett: There are some perforamnce considerations.
- 17:30:23 [TabAtkins_]
- jdaggett: As the glyph composition shows, some of these are already handled in an ad-hoc way.
- 17:30:27 [krit]
- krit has joined #css
- 17:30:36 [TabAtkins_]
- jdaggett: Most fonts, you can do a simple analysis and do a fast path if the font doesn't have a feature at all.
- 17:30:46 [TabAtkins_]
- jdaggett: It just means there's a little additional logic before taking the fast path.
- 17:31:09 [TabAtkins_]
- jdaggett: So I think we should resolve that the "none" value resolves the issue.
- 17:32:26 [TabAtkins_]
- Bert: Is "none" the same as setting "no-*" for all the others?
- 17:32:54 [TabAtkins_]
- jdaggett: Yes.
- 17:33:19 [TabAtkins_]
- sylvaing: What about an "auto" value that is a default?
- 17:33:29 [TabAtkins_]
- jdaggett: I'm keeping "normal" as the default.
- 17:33:42 [TabAtkins_]
- jdaggett: kerning has "auto", because that's more prevalent and can be controlled by browser vendors.
- 17:34:13 [TabAtkins_]
- RESOLVED: Accept font-variant-ligatures as written: "normal" is initial value, and "none" is added which turns off those features.
- 17:34:34 [TabAtkins_]
- plinss: My only concern is that "normal" seems underdefined.
- 17:34:41 [TabAtkins_]
- jdaggett: There's a section that defines the common defaults.
- 17:34:51 [TabAtkins_]
- glenn: Could you put those common defaults for this feature in this section?
- 17:34:53 [TabAtkins_]
- jdaggett: Oh, sure.
- 17:35:24 [TabAtkins_]
- plinss: The reason you're not explicitly saying "'normal' means foo and bar" is because it varies on font engine and script>
- 17:35:27 [TabAtkins_]
- jdaggett: Yes.
- 17:35:35 [TabAtkins_]
- RESOLVED: Public a new WD of Fonts.
- 17:36:15 [TabAtkins_]
- <br dur=15min>
- 17:36:21 [TabAtkins_]
- RESOLVED: Publish a new WD of fonts.
- 17:36:25 [dbaron]
- "My system just crashed." "Oh, good."
- 17:45:16 [glenn]
- s/put those common defaults for this feature in this section/put a link from "common defaults" to its defining section/
- 17:51:56 [jet]
- dbaron: LOL!
- 17:52:40 [Rossen]
- Rossen has joined #css
- 17:57:44 [krit]
- krit has joined #css
- 18:00:35 [fantasai]
- http://www.w3.org/Style/CSS/Tracker/products/10
- 18:01:26 [Bert]
- ScribeNick: Bert
- 18:01:37 [dbaron]
- Topic: CSS3 Text
- 18:02:03 [Bert]
- fantasai: We resolved to postpone to level 4, but now we have a shorthand idea.
- 18:02:23 [Bert]
- ... [issue-236]
- 18:02:26 [fantasai]
- http://www.w3.org/Style/CSS/Tracker/issues/236
- 18:02:58 [Bert]
- tab: sounds useful, now we have a useful way to address aliasing.
- 18:03:03 [Bert]
- florian: I'd agree
- 18:03:33 [Bert]
- fantasai: So resolve that word-wrap is shorthand for overflow-wrap?
- 18:03:50 [Bert]
- RESOLVED: make word-wrap shorthand fpr overflow-wrap
- 18:04:23 [Bert]
- issue-221?
- 18:04:23 [trackbot]
- ISSUE-221 -- text-emphasis-color can't recompute color to match text on descendants -- raised
- 18:04:23 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/221
- 18:04:45 [Bert]
- fantasai: there is an errata open, should be posted to css3-color
- 18:05:20 [smfr]
- smfr has joined #css
- 18:05:42 [smfr]
- smfr has joined #css
- 18:05:49 [tantek]
- http://www.w3.org/Style/2011/REC-css3-color-20110607-errata.html
- 18:06:01 [Bert]
- action bert: add errata to css3-color errata ist about currentcolor, (as in above URL)
- 18:06:01 [trackbot]
- Created ACTION-502 - Add errata to css3-color errata ist about currentcolor, (as in above URL) [on Bert Bos - due 2012-08-22].
- 18:06:23 [Bert]
- issue-243?
- 18:06:23 [trackbot]
- ISSUE-243 -- graphical effects and text-decoration -- raised
- 18:06:23 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/243
- 18:06:36 [dbaron]
- record of currentColor errata is in http://lists.w3.org/Archives/Public/www-style/2012May/0541.html
- 18:06:37 [Bert]
- fantasai: issue with underline and shadow and all these kinds of things
- 18:06:43 [Bert]
- ... if you have an ancestor,
- 18:07:05 [Bert]
- ... say whole para is underlined and a text has shadow, etc.
- 18:07:12 [Bert]
- ... is the underline shadowed?
- 18:07:32 [Bert]
- SteveZ: Is the underline logically part of the para even if physically it is not?
- 18:07:43 [Bert]
- fantasai: How about visibility?
- 18:07:53 [Bert]
- SteveZ: If not visible, also not undelrined, I think.
- 18:08:02 [Bert]
- dbaron: ssociated with the text.
- 18:08:12 [Bert]
- ... text decor gets colors from elt it comes from.
- 18:08:29 [Bert]
- fantasai: if invisible, definitely not visible.
- 18:08:36 [Bert]
- dbaron: You mean opacity?
- 18:08:39 [Bert]
- fantasai: yes
- 18:08:47 [Bert]
- dbaron: opacity happens all at once.
- 18:08:54 [Bert]
- ... I can't imagine another option
- 18:09:04 [Bert]
- ... opctity on ancestor applies to all descentants.
- 18:09:26 [Bert]
- fantasai: Then remaining question is filter efefects (same way?) and tet shadow,
- 18:09:36 [Bert]
- tab: filter efect is same yes
- 18:09:50 [Bert]
- fantasai: part of underline could be shadowed and part not, looks weird.
- 18:09:57 [Bert]
- SteveZ: looks weird eihter way
- 18:10:06 [Bert]
- fantasai: [draws on white board]
- 18:10:17 [Bert]
- dbaron: three cases:
- 18:10:33 [Bert]
- ... shadow on something inide, on same, on something outside.
- 18:10:43 [Bert]
- ... debate is on inside case
- 18:10:57 [Bert]
- SteveZ: For emphasiz, I think the udenrline should get shdaow
- 18:11:20 [Bert]
- fantasai: [draws text with underline, part of it get shadow]
- 18:11:26 [Bert]
- ... does underline get shadow?
- 18:11:45 [Bert]
- TabAtkins_: I think so. Some case lookk weird, but bulk is ok.
- 18:11:53 [Bert]
- dbaron: I have diff. intuition
- 18:11:55 [fantasai]
- http://lists.w3.org/Archives/Public/www-style/2012Jan/att-0265/underline-shadow.png
- 18:12:12 [Bert]
- sylvaing: ie does shadow the underline
- 18:12:33 [Bert]
- ... so the etst case is para is underlined, and a part of iut has shadow?
- 18:12:38 [Bert]
- fantasai: yes
- 18:12:51 [Bert]
- sylvaing: webkit shadows the underine, ff also,
- 18:13:06 [Bert]
- dbaron: what i syour test case, sylvaing ?
- 18:13:37 [sylvaing]
- <!doctype html>
- 18:13:38 [sylvaing]
- <style>
- 18:13:38 [sylvaing]
- p {
- 18:13:38 [sylvaing]
- text-decoration: underline;
- 18:13:38 [sylvaing]
- }
- 18:13:38 [sylvaing]
- #test {
- 18:13:40 [sylvaing]
- text-shadow: 0.1em 0.1em #333;
- 18:13:42 [sylvaing]
- }
- 18:13:44 [sylvaing]
- </style>
- 18:13:46 [sylvaing]
- <p>This is <span id="test">underlined</span></p>
- 18:13:51 [Bert]
- sylvaing: [trying to copy his test case]
- 18:14:06 [Bert]
- SteveZ: it makes more sens with shadow below than with above.
- 18:14:27 [Bert]
- sylvaing: looks like opera doesn't shadow th eunderline
- 18:15:31 [Bert]
- dbaron: Not sure we could do anything than what we do. WOnder how Opera is able to.
- 18:15:38 [Bert]
- ... text-shadow is inherited.
- 18:15:51 [Bert]
- ... we don't even now what is outside or inside
- 18:16:00 [Bert]
- fantasai: But you do know for udnerline.
- 18:16:16 [Bert]
- florian: We don't shadow the undelrine either way.
- 18:16:32 [dbaron]
- s/either way/either way you nest them/
- 18:17:22 [Bert]
- bert: in fantasai 's drawing i think without shadow looks better...
- 18:17:39 [Bert]
- dbaron: To implement, you'd redo your text decoration...
- 18:17:47 [Bert]
- fantasai: Basically the same way as for color
- 18:18:05 [fantasai]
- s/Basically/Basically you do your shadow finding/
- 18:18:25 [Bert]
- fantasai: So it is possible to implement, what do we want?
- 18:19:05 [Bert]
- ... if we decide it is not shadowed, users can still aplly a filter effect to get a shadow.
- 18:19:13 [Bert]
- ... It is not a very common case.
- 18:19:30 [Bert]
- sylvaing: We have interop between 3 browsers out of 4 i tested.
- 18:19:44 [Bert]
- SteveZ: General underline rule covers position and color.
- 18:19:55 [Bert]
- ... We'd like it to behave the same way.
- 18:20:05 [Bert]
- ... Filter effects hould apply, we said.
- 18:20:18 [Bert]
- ... Authors would be surprised if shadow was absent.
- 18:20:44 [Bert]
- tab: I dont' care that much, lets go with [??]
- 18:21:03 [Bert]
- plinss:biased towards finding shadow the same way as the color.
- 18:21:12 [Bert]
- ... decotration visually belongs to parent,
- 18:21:26 [Bert]
- ... slight bias.
- 18:21:45 [Bert]
- SteveZ: So doesn't matter much now, and once it does, we'll put in a proeprty to control it.
- 18:21:58 [Bert]
- plinss: I'm never quite sure how it should behave,
- 18:22:07 [Bert]
- SteveZ: It's certainly one of th emost complex definitions.
- 18:22:36 [Bert]
- dbaron: inclined to agree with bert about lower one [no shadow] being better.
- 18:22:56 [Bert]
- SteveZ: I think it depends on the shadow. THis shadow is above. Below would look less strange.
- 18:23:19 [Bert]
- plinss: the letter is different color, undelrine visually doens't belong to that text.
- 18:23:29 [dbaron]
- I was actually saying I agreed with Brad (since fantasai quoted his opinion), but it turns out Brad and Bert agree :-)
- 18:24:37 [Bert]
- fantasai: I'll look strange no matter what.
- 18:24:56 [Bert]
- sylvaing: is there a use case where it is abad thing what browsers do now?
- 18:25:17 [Bert]
- dbaron: I think i prefer to go the other way, more consistent with the model.
- 18:25:28 [Bert]
- SteveZ: Despite that filters apply?
- 18:25:40 [Bert]
- dbaron: Different kinds of things.
- 18:25:54 [Bert]
- TabAtkins_: They just apply to the pixels.
- 18:26:05 [dbaron]
- more consistent with the model and with most of the people who expressed an opinion about which is better
- 18:26:13 [Bert]
- SteveZ: How would the user see the difference wheteher it is picel based or not?
- 18:26:39 [Bert]
- sylvaing: Without a use caseshowing it is clearly wrong, I'd not like to change.
- 18:27:11 [dbaron]
- A) shadows draw the same decorations as the text they're shadowing
- 18:27:29 [Bert]
- glazou: bottom
- 18:27:50 [Bert]
- [strawpoll]
- 18:28:02 [Bert]
- sylvaing: top
- 18:28:12 [Bert]
- Bert: bottom
- 18:28:18 [Bert]
- koji: top
- 18:28:25 [Bert]
- SteveZ: top
- 18:28:33 [Bert]
- glenn: top
- 18:28:36 [Bert]
- ted: top
- 18:28:39 [Bert]
- alan: top
- 18:28:44 [Bert]
- fantasai: abstain
- 18:28:49 [Bert]
- tantek: abstain
- 18:28:53 [Bert]
- TabAtkins_: top
- 18:28:56 [Bert]
- dbaron: bottom
- 18:29:03 [Bert]
- florian: bottom
- 18:29:07 [Bert]
- leif: bottom
- 18:29:11 [dbaron]
- http://lists.w3.org/Archives/Public/www-style/2012Jan/att-0265/underline-shadow.png
- 18:29:13 [Bert]
- peter: bottom
- 18:29:41 [Bert]
- fantasai: How about a public poll?
- 18:29:56 [Bert]
- sylvaing: Does anybody object to what is already done?
- 18:29:56 [glazou]
- glazou: NO CONSENSUS
- 18:30:12 [Bert]
- florian: That would be ok, even if it is against what i prefer.
- 18:30:17 [dbaron]
- dbaron: yep
- 18:30:22 [Bert]
- RESOLVED: top
- 18:31:01 [Bert]
- s/top/ apply shadow, because it is what is most widely implemented now.
- 18:31:17 [Bert]
- issue-273?
- 18:31:17 [trackbot]
- ISSUE-273 -- Interaction of text-decoration longhands and blink -- raised
- 18:31:17 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/273
- 18:31:46 [Bert]
- fantasai: issue is that text-deco takes a number of values, including blink.
- 18:31:59 [Bert]
- ... we dont have long hand for blink.
- 18:32:21 [Bert]
- ... we can make 'blink' a valid value in one of the long hand properties.
- 18:32:28 [Bert]
- ... or we can make a blink property
- 18:32:44 [Bert]
- ... or we can throw it away in the DOM.
- 18:33:04 [Bert]
- [jokes about blink]
- 18:33:15 [Bert]
- fantasai: Could be a text-decoration-style
- 18:33:28 [Bert]
- TabAtkins_: I'm using animation instead of blink
- 18:33:49 [Bert]
- glazou: [shows his home page with blinking underline]
- 18:34:02 [Bert]
- dbaron: most browsers haven't implemented blink.
- 18:34:12 [Bert]
- ... not in webkit and IE.
- 18:34:13 [fantasai]
- Tab: <blink> can be implemented as an animation
- 18:34:31 [Bert]
- glazou: I don't like special cases. so not fantasai's last option.
- 18:35:04 [Bert]
- dbaron: We added an additional proeprty -moz-tex-blink to solve this issue.
- 18:35:15 [Bert]
- glazou: i like that one.
- 18:35:34 [Bert]
- dbaron: It is an extra property for a feature we might rather remove.
- 18:35:46 [Bert]
- fantasai: Prefer to not ceate new property, seems excessive.
- 18:35:59 [Bert]
- ... prefer to put in on text-decoration-style.
- 18:36:36 [Bert]
- TabAtkins_: Prefer to ignore the blink on the shorthand, parse it, but doens't do anything.
- 18:36:43 [Bert]
- fantasai: not even store it?
- 18:37:04 [Bert]
- tab: right, doens't round trip, only round trips functionally.
- 18:37:51 [Bert]
- dbaron: it is backwards-incompatible to pout it on anything else than tetx-decoration-style.
- 18:38:05 [Bert]
- ... in fact, current spec seems not backwards compatible.
- 18:38:19 [Bert]
- glazou: do not want to deprecate it.
- 18:38:33 [Bert]
- TabAtkins_: But only two impls, so why not deprecate it?
- 18:38:40 [Bert]
- plinss: We have two impls.
- 18:38:57 [dbaron]
- We haven't yet implemented the backwards-incompatible change that's in the spec
- 18:39:01 [Bert]
- tantek: dprecate doesn't mean remove.
- 18:39:05 [dbaron]
- it looks like we still accept 'text-decoration: underline blink overline'
- 18:39:23 [Bert]
- plinss: But still needs to be defined, even if deprecated.
- 18:39:56 [Bert]
- ... can you say 'underline red overline'
- 18:40:08 [Bert]
- dbaron: Not according to spec, and don't thing you should be able to
- 18:40:18 [Bert]
- plinss: and 'underine solid overline'?
- 18:40:25 [Bert]
- fantasai: Seems odd ordering.
- 18:40:33 [Bert]
- ... Inclinded to say no.
- 18:40:48 [Bert]
- dbaron: Easiest path forward is to make 'blink' value of text-decoration-line
- 18:41:01 [Bert]
- ... the way we make the shorthand is bit weird.
- 18:41:12 [Bert]
- ... because on eof the long hands is the old property.
- 18:41:23 [Bert]
- ... We coluld just have added the new properties
- 18:41:51 [Bert]
- ... we moved text-decoration functionailty.
- 18:42:08 [Bert]
- ... blink is funny since CSS1.
- 18:42:32 [Bert]
- [talk about history of netscape]
- 18:43:23 [Bert]
- florian: Opera has implemented it. I'm not srongly asking for deprecation, but in favor of deprecation.
- 18:43:50 [Bert]
- SteveZ: You don't really want people to use blink for accessibilty reasons.
- 18:44:07 [Bert]
- fantasai: We can map BLINK tag to anaimation in user agent style sheet.
- 18:44:15 [dbaron]
- glazou (before SteveZ): If we're going to deprecate it, should have an example explaining how to do it with animations.
- 18:44:33 [Bert]
- plinss: resolve to put blink on txt-decoration-line and deprecate it?
- 18:44:56 [Bert]
- florian: so: should not, but are allowed to use blink?
- 18:45:13 [Bert]
- plinss: it is a warning that it *may* be removed from spec later.
- 18:45:45 [Bert]
- RESOLVED: blink is value of text-decoration-line and it is deprecated with warning that authors should not use it.
- 18:46:41 [Bert]
- RESOLVED: add example of corresponding animation to the spec.
- 18:46:58 [jdaggett]
- jdaggett has joined #css
- 18:47:00 [dbaron]
- (in the UA style sheet appendix)
- 18:47:03 [jdaggett]
- http://people.mozilla.org/~jdaggett/tests/letter-spacing-tests.html
- 18:47:23 [Bert]
- jdaggett: I did some tests.
- 18:47:31 [Bert]
- ... Checking interopreability.
- 18:48:06 [Bert]
- ... letter spacing should control spacing on either side of char, but should not affect last letter (if right aligned line)
- 18:48:20 [Bert]
- ... [shows image]
- 18:48:28 [fantasai]
- http://dev.w3.org/csswg/css3-text/#letter-spacing
- 18:48:33 [fantasai]
- "Letter-spacing must not be applied at the beginning or at the end of a line."
- 18:48:38 [Bert]
- ... But implementatiosn add spacing after last letter.
- 18:48:57 [Bert]
- ... [shows another image]
- 18:49:13 [Bert]
- ... THis image shows fully justified.
- 18:49:27 [Bert]
- fantasai: The spec already says what UAs must do.
- 18:49:42 [Bert]
- jdaggett: It doesn't say *how* spacing is applied.
- 18:50:14 [Bert]
- ... at the end of the line yu should not get space.
- 18:50:24 [Bert]
- fantasai: Yes, that is a bug according to the current spec.
- 18:50:51 [Bert]
- jdaggett: But the spec doesn't say exacty that
- 18:51:22 [Bert]
- dbaron: the spec is precise, but you are describing a differnet model, eqwually precise, but different at element boundaries.
- 18:51:41 [Bert]
- jdaggett: I think you atually have to get into how it works, e.g., in rtl.
- 18:52:06 [Bert]
- fantasai/dbaron: What impls do is already bug, according to current spec.
- 18:52:14 [Bert]
- jdaggett: I don't see that text.
- 18:52:23 [Bert]
- .. What fantasai quoted is not precise enough.
- 18:52:42 [Bert]
- fantasai: Give me an example that is not covered by the spec, and we'll improve the spec.
- 18:53:02 [Bert]
- jdaggett: and between ltr trl boundaries?
- 18:53:14 [Bert]
- fantasai: It is still "between chars" as the spec says.
- 18:53:25 [Bert]
- SteveZ: Hald on each side, and you can't tell the difference.
- 18:53:45 [Bert]
- fantasai: You can do it as trailing edge, but you stll have to handle the boundaries correctly.
- 18:53:53 [Bert]
- jdaggett: I'll have to look more.
- 18:54:00 [Bert]
- ... I started from looking nto justification.
- 18:54:13 [Bert]
- ... letter nd word spaceing is input to justify.
- 18:54:22 [Bert]
- ... allowed ot expand in different places.
- 18:54:37 [Bert]
- ... but the actual algo wasn't clear form the spec, for different values.
- 18:54:48 [Bert]
- ... Each diff value of text-justify,
- 18:54:57 [Bert]
- florian: I have a similar concern:
- 18:55:15 [Bert]
- ... reading the spec, good algos can be done, but spec doesn't tell you how.
- 18:55:32 [Bert]
- ... the spec doens't induce vendors to implement those algos
- 18:55:49 [Bert]
- SteveZ: It is modeled on systems from well before XSL.
- 18:56:06 [Bert]
- jdaggett: Now we are designing knobs with semi-undefined justification systems.
- 18:56:29 [Bert]
- ... how these inputs are used, i don't see differences between justify values.
- 18:56:44 [Bert]
- fantasai: Priorities between buckets.
- 18:56:57 [Bert]
- ... It sorts the expansion opportunities into buckets.
- 18:57:04 [Bert]
- ... It doesn't tell you the algo precisely.
- 18:57:13 [Bert]
- ... It is not our job to define the algo.
- 18:57:26 [Bert]
- jdaggett: That's the pb, Knobs have no precise meaning.
- 18:57:36 [Bert]
- alan: not ndefined, maybe udnerspecified.
- 18:57:53 [Bert]
- florian: Intentinally, i think. Don't prevvent better algos.
- 18:58:01 [Bert]
- jdaggett: But we need a mininmum.
- 18:58:16 [Bert]
- ... I don't udnertsand th euse cases for the different justify values.
- 18:58:21 [Bert]
- ... What are teh examples.
- 18:58:33 [Bert]
- ... I dnbd' tsee a whole lot of difference in trying them.
- 18:58:45 [Bert]
- ... It seems to have been modeled on IE 5.5.
- 18:58:59 [Bert]
- ... Not clear where the difference are.
- 18:59:11 [Bert]
- ... What are the use cases, maybe sylvain can tell?
- 18:59:17 [Bert]
- .. Are the cases till relevant?
- 18:59:22 [Bert]
- s/.. /... /
- 18:59:31 [Bert]
- sylvaing: You wan tto deprecate some?
- 18:59:44 [Bert]
- jdaggett: Spec is just too vague.
- 18:59:57 [Bert]
- fantasai: table in spec shows the differences.
- 19:00:22 [Bert]
- florian: Don't agree. It seems most of these are needed for internationaliztion.
- 19:00:33 [Bert]
- fantasai: One case is mixed scripts on one line.
- 19:00:49 [Bert]
- ... Interword will expand the spaces and nothing else.
- 19:00:59 [Bert]
- ... ideograph exapnds between ideographs.
- 19:01:06 [Bert]
- ... distribute expands both.
- 19:01:22 [Bert]
- florian: Different countries have different expectaions.
- 19:01:37 [Bert]
- jdaggett: Do we have collected the examples?
- 19:01:50 [Bert]
- florian: With this spec we can impl an algo that matches the spec.
- 19:02:06 [Bert]
- ... But that algo may still not be very good.
- 19:02:15 [Bert]
- ... A bad algo can stil be conformant.
- 19:02:36 [Bert]
- fantasai: We cannot define all algos. That's more than a PhD research.
- 19:02:51 [Bert]
- jdaggett: All I ask is some simple use cases.
- 19:03:02 [Bert]
- ... why is it important to have these property values?
- 19:03:10 [Bert]
- fantasai: Pictures?
- 19:03:18 [Bert]
- jdaggett: Conncrete exampels.
- 19:03:40 [Bert]
- jdaggett: Is there enough info in the spec to say if an impl matches?
- 19:04:06 [Bert]
- ... Not saying we should deprecate. But I don't see the diff. when trying them out.
- 19:04:31 [Bert]
- florian: I'm not sure I'm asking for more specific. That might lock into bad algo.
- 19:04:40 [Bert]
- ... But I'm gemnerally unhappy.
- 19:04:48 [Bert]
- ... Not sure if more defined makes me happier.
- 19:05:04 [Bert]
- SteveZ: Document whatr the differences are is one yhing.
- 19:05:16 [Bert]
- jdaggett: Spc shoul dat leats have rudimentary examples.
- 19:05:33 [Bert]
- SteveZ: You say we should take things out *until* we can provice examples?
- 19:05:44 [Bert]
- jdaggett: Posting to www-style is OK, too.
- 19:06:08 [Bert]
- jdaggett: Would like to ask sylvaing to find where it comes from.
- 19:06:20 [Bert]
- ... No doubt came from cases in MS Office.
- 19:06:33 [Bert]
- ... can we get more info?
- 19:06:50 [Bert]
- ... The description by MS is "this is good for Thai"
- 19:06:57 [Bert]
- ... But why is it good?
- 19:07:12 [Bert]
- fantasai: So you wan texamples in the spec. I'll take an action.
- 19:07:22 [Bert]
- sylvaing: And I one to fine out about IE5
- 19:07:31 [Bert]
- s/fine/find/
- 19:07:49 [Bert]
- jdaggett: We are trying to break it down by script. That is not the ideal way.
- 19:07:58 [Bert]
- fantasai: Typographic tradition.
- 19:08:07 [Bert]
- jdaggett: Kashida is an example.
- 19:08:14 [Bert]
- ... Could apply to cursive in general.
- 19:08:23 [Bert]
- ... Even if it is not currently used for latin.
- 19:08:30 [Bert]
- SteveZ: Swash charcters?
- 19:08:42 [Bert]
- ... They can go across words.
- 19:08:47 [Bert]
- jdaggett: They extend?
- 19:08:51 [Bert]
- SteveZ: yes
- 19:09:00 [Bert]
- jdaggett: This is about alongating.
- 19:09:16 [fantasai]
- s/along/elong/
- 19:09:46 [Bert]
- ACTION fantasai: put examples of text-justify in the spec.
- 19:09:46 [trackbot]
- Created ACTION-503 - Put examples of text-justify in the spec. [on Elika Etemad - due 2012-08-22].
- 19:10:19 [Bert]
- ACTION sylvaing: look into history of text-justify in IE 5+
- 19:10:19 [trackbot]
- Created ACTION-504 - Look into history of text-justify in IE 5+ [on Sylvain Galineau - due 2012-08-22].
- 19:11:32 [Bert]
- issue-276?
- 19:11:32 [trackbot]
- ISSUE-276 -- Split Text Decoration into separate module? -- raised
- 19:11:32 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/276
- 19:11:47 [Bert]
- jdaggett: Why needed to split?
- 19:11:53 [Bert]
- fantasai: module is very long.
- 19:12:08 [Bert]
- ... text-deco no interaction with anything else in spec.
- 19:12:26 [Bert]
- florian: Useful if that makes things faster. Does it here?
- 19:12:45 [Bert]
- fantasai: Don;'t think so now. Maybe future levels may be different.
- 19:12:55 [Bert]
- ... Table of contents makes more sense.
- 19:13:13 [Bert]
- florian: Somewhat helpful for prioritizing.
- 19:13:33 [Bert]
- ... Smaller spec easier.
- 19:14:43 [Bert]
- jdaggett: I think the spec needs to be stronger. Take thinks to level 4.
- 19:14:54 [fantasai]
- s/stronger/smaller/
- 19:15:05 [Bert]
- ... This spec should be considered for what is specified and anot and push thibgs out accordingly.
- 19:15:17 [Bert]
- ... DOn't think tetx-deco needs its own spec.
- 19:15:30 [Bert]
- SteveZ: But splitting makes it easier.
- 19:15:36 [Bert]
- tantek: Agree.
- 19:15:54 [Bert]
- florian: I'm happy with split if editors want it and take on editing both.
- 19:16:13 [Bert]
- jdaggett: *AND* not new features in either part.
- 19:16:21 [Bert]
- fantasai: Agreed. No new features planned.
- 19:16:52 [Bert]
- ... But we need to talk about one issue next.
- 19:17:20 [Bert]
- bert: it is so hard to find in which spec a prop is defined.
- 19:17:24 [lstorset]
- Handy CSS property index for split specs: http://meiert.com/en/indices/css-properties/
- 19:17:32 [Bert]
- tantek: That is a glbal pb. Needs to be fixed.
- 19:17:42 [Bert]
- glenn: snapshot?
- 19:17:51 [Bert]
- fantasai: snapshot doesn't incude anything below CR.
- 19:18:07 [Molly]
- Molly has joined #css
- 19:18:25 [fantasai]
- http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cstyle%3E%0Ap%20{%20font-size%3A%203em%3B%20text-decoration%3A%20line-through%20}%0Aa%20{%20xpadding%3A%200.2em%3B%20}%0Aa%3Ahover%20{%20background%3A%20yellow%3B%20}%0A%3C%2Fstyle%3E%0A%3Cp%3Eone%20%3Ca%3Etwo%3C%2Fa%3E%20%3Ca%3Ethree%3C%2Fa%3E%20%3Ca%3Efour%3C%2Fa%3E%20%3Ca%3Efive%3C%2Fa%3E%20six
- 19:18:31 [Bert]
- RESOLVED: split text-decoration into sepearet module.
- 19:18:50 [Bert]
- issue-275?
- 19:18:50 [trackbot]
- ISSUE-275 -- constant vs. varying text-decoration positions -- raised
- 19:18:50 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/275
- 19:19:18 [Bert]
- issue-270?
- 19:19:18 [trackbot]
- ISSUE-270 -- text-decoration-skip value for border/padding/margin -- raised
- 19:19:18 [trackbot]
- http://www.w3.org/Style/CSS/Tracker/issues/270
- 19:19:32 [Bert]
- fantasai: [explains example above]
- 19:19:44 [Bert]
- ... strange effects on hover.
- 19:20:17 [Bert]
- ... imagine you're hovering over a link, with padding
- 19:20:25 [Bert]
- ... the strike through is fragmented.
- 19:20:31 [Bert]
- ... looks really bad.
- 19:20:45 [Bert]
- dbaron: We discussed text-decaration models a lot.
- 19:20:56 [Bert]
- ... We came up with one. Took many years to get it impleented.
- 19:21:12 [Bert]
- ... FF implemented it. Now you say we don't want thtta model.
- 19:21:29 [Bert]
- fantasai: Use case is editor's names on drafts.
- 19:21:45 [Bert]
- ... I added padding around the links.
- 19:21:52 [Bert]
- ... That broke strike trhrough.
- 19:22:42 [Bert]
- ... Any kind of padding on inline elements will break it.
- 19:22:56 [Bert]
- alan: padding is not content, text-decoration should not apply.
- 19:23:08 [Bert]
- sylvaing: But underline doesn't stop under padding.
- 19:23:19 [sylvaing]
- correction: it actually does
- 19:23:49 [Bert]
- glazou: Say in an editor I select a paragraph, and it has modification marks, highlighted with line thrhough.
- 19:23:55 [Bert]
- fantasai: But the para is a block.
- 19:24:14 [Bert]
- ... Issue is if ancestor is striking through an elt.
- 19:24:18 [Bert]
- dbaron: Proposal?
- 19:24:37 [Bert]
- fantasai: I propose keyword 'box-decoration'
- 19:24:45 [Bert]
- dbaron: On inline elts only?
- 19:24:48 [Bert]
- fantasai: Yes.
- 19:24:53 [dbaron]
- (display:inline, not inline-block, etc.)
- 19:24:56 [jet_]
- jet_ has joined #CSS
- 19:24:58 [Bert]
- ... If text-deco is pallied by ancestor
- 19:25:11 [Bert]
- ... then is is applied from margin edge to margin edge.
- 19:25:21 [Bert]
- tantek: We had long discussions long ago.
- 19:25:33 [Bert]
- ... We all did something different with CSS2
- 19:25:45 [Bert]
- ... We settled on a model that looks reasonable.
- 19:25:58 [Bert]
- ... We had to make exceptions for blocks
- 19:25:59 [fantasai]
- tantek^: about how box properties apply to inlines
- 19:26:11 [Bert]
- ... This seems liek ame pb. We missed an exception.
- 19:26:31 [Bert]
- ... Same case as how borders and bgs apply to boxes.
- 19:26:55 [Bert]
- ... Rather than add property, we need to fix the definition.
- 19:27:16 [Bert]
- ... We did it with borders and bg, I think we should try to do the same here.
- 19:27:23 [Bert]
- glazou: It's only inline?
- 19:27:31 [Bert]
- fantasai: Yes, strictly.
- 19:27:45 [Bert]
- ... Either define, or add value (or both).
- 19:27:53 [fantasai]
- for text-decoration-skip
- 19:27:57 [Bert]
- dbaron: We aren't yet interop on the CSS 2.1 behavior.
- 19:28:16 [dbaron]
- dbaron: So I'm ok with it even though it's a change from 2.1.
- 19:28:32 [Bert]
- tantek: Maybe apply an optimistic change and give authors a way to scream if it breaks pages.
- 19:28:45 [Bert]
- ... Evaluate case by case, then change default accordingly.
- 19:28:55 [Bert]
- glazou: I can live with proposed change.
- 19:29:10 [Bert]
- ... MAkes no sens for non-inline.
- 19:29:30 [Bert]
- fantasai: Should try to do it by default.
- 19:30:07 [glazou]
- <br type="lunch" />
- 19:30:58 [leaverou]
- leaverou has joined #css
- 19:31:16 [Bert]
- dbaron: Drawing the text-dco is thus independent of the text. Draws through margins.
- 19:31:26 [Bert]
- florian: what does it mean?
- 19:31:38 [Bert]
- dbaron: May be detecatable in cases with nested inlines.
- 19:31:49 [Bert]
- ... E.g., with relative pos.
- 19:31:51 [Zakim]
- Zakim has left #css
- 19:33:39 [Bert]
- dbaron: Add new value to text-decoration-skip. Not part of initial value. Default is to draw decoration from margin edge to margin edge.
- 19:33:47 [dbaron]
- difference between "from margin to margin" and "through inlines" is detectable with painting order, e.g., with <span padding><span relpos>text</span></span>
- 19:33:57 [fantasai]
- Default is to draw decoration on margin/padding/border
- 19:34:31 [dbaron]
- RESOLVED: Add a new value to text-decoration-skip controlling whether decorations are drawn through the padding/border/margin of display:inline elements. This new value is not part of the initial value and therefore (change from CSS 2.1) decorations are drawn through padding/border/margin of inlines by default.
- 19:38:01 [Blatt]
- Blatt has joined #css
- 19:39:29 [miketaylr]
- miketaylr has joined #css
- 19:51:14 [Blatt1]
- Blatt1 has joined #css
- 19:54:30 [Blatt1]
- Blatt1 has left #css
- 19:58:53 [Blatt]
- Blatt has joined #css
- 20:02:27 [jet_]
- jet_ has joined #CSS
- 20:09:19 [krit]
- krit has joined #css
- 20:13:31 [fantasai]
- csswg?
- 20:14:28 [jdaggett]
- fantasai: i think daniel/tab knows the skype csswg username
- 20:14:34 [jdaggett]
- not me
- 20:26:17 [achicu]
- achicu has joined #css
- 20:28:45 [mvujovic]
- mvujovic has joined #css
- 20:32:21 [fantasai]
- ScribeNick: fantasai
- 20:32:33 [Zakim]
- Zakim has joined #css
- 20:32:45 [glazou]
- Zakim, make room for 3
- 20:32:45 [Zakim]
- I don't understand 'make room for 3', glazou
- 20:32:55 [glazou]
- Zakim, room for 3
- 20:32:55 [Zakim]
- I don't understand 'room for 3', glazou
- 20:33:01 [plinss]
- zakim, room for 3?
- 20:33:03 [Zakim]
- ok, plinss; conference Team_(css)20:33Z scheduled with code 26631 (CONF1) for 60 minutes until 2133Z
- 20:33:51 [vhardy_]
- vhardy_ has joined #css
- 20:34:05 [Zakim]
- Team_(css)20:33Z has now started
- 20:34:12 [Zakim]
- +??P0
- 20:34:36 [vhardy__]
- vhardy__ has joined #css
- 20:34:49 [glazou]
- Zakim, ??P0 is me
- 20:34:49 [Zakim]
- +glazou; got it
- 20:35:12 [glazou]
- krit: waiting for you on the call above
- 20:35:15 [Zakim]
- +krit
- 20:35:52 [krit]
- https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html
- 20:36:09 [fantasai]
- Vincent: FPWD request for filters
- 20:37:03 [fantasai]
- krit: Are there any questions?
- 20:37:28 [fantasai]
- krit^: Spec is a combination of predefined filter effects, SVG filter effects, and CSS shaders
- 20:37:45 [fantasai]
- alan: SVGWG already agreed to publish
- 20:39:09 [fantasai]
- fantasai: Last time CSSWG discussed this, we concluded we wanted several "targets" of things to filter
- 20:39:33 [glazou]
- krit: what's your skype id ?
- 20:39:39 [fantasai]
- fantasai: One was the background, another was background + border as a single unit, another was borders only, another was content only, another was entire element as a whole
- 20:39:41 [krit]
- krit85
- 20:39:55 [glazou]
- krit: leaving the call now
- 20:39:59 [Zakim]
- -glazou
- 20:40:13 [fantasai]
- fantasai: Can I apply e.g. an opacity filter, or a blur filter, to any one of these things listed above?
- 20:40:28 [fantasai]
- fantasai: If not, I think that's an issue
- 20:40:34 [fantasai]
- hober: ok with just marking that as an issue
- 20:40:35 [fantasai]
- fantasai: sure
- 20:41:20 [cabanier]
- fantasai: are you thinking of blending and compositing?
- 20:41:50 [cabanier]
- fantasai: It's in there. I haven't heard of doing this for filters too (but it makes sense)
- 20:42:33 [fantasai]
- no idea what the technical term, only that we want to be able to apply filters to each part
- 20:43:04 [fantasai]
- fantasai: We've had requests for background-fiter, border-filter, etc-filter (replace filter with opacity, or shadow, or whatever)
- 20:43:19 [fantasai]
- fantasai: We decided we should do this generically with filters, rather than adding a new property for each
- 20:43:47 [fantasai]
- fantasai: So this module needs to be accommodating those requests somehow
- 20:43:52 [fantasai]
- ACTION krit: mark this as an issue
- 20:43:52 [trackbot]
- Sorry, couldn't find user - krit
- 20:44:23 [fantasai]
- ACTION dschulze: mark this as an issue
- 20:44:24 [trackbot]
- Created ACTION-505 - Mark this as an issue [on Dirk Schulze - due 2012-08-22].
- 20:44:34 [fantasai]
- alan: Anything else?
- 20:45:03 [Zakim]
- -krit
- 20:45:04 [Zakim]
- Team_(css)20:33Z has ended
- 20:45:04 [Zakim]
- Attendees were glazou, krit
- 20:46:08 [fantasai]
- RESOLVED: Publish Filters FPWD
- 20:46:21 [fantasai]
- Topic: Masking
- 20:46:46 [fantasai]
- Topic: Transforms
- 20:46:54 [krit]
- http://dev.w3.org/csswg/css3-transforms/#animation
- 20:47:09 [fantasai]
- krit: Talked about interpolation, and request for some tests
- 20:47:39 [fantasai]
- krit: All browsers do ?
- 20:47:50 [fantasai]
- krit: All browsers do matrix decomposing
- 20:47:54 [fantasai]
- krit: ...
- 20:48:25 [krit]
- http://wiki.csswg.org/topics/interpolation-rotate3d
- 20:48:26 [fantasai]
- krit: Let me post a link
- 20:48:39 [fantasai]
- krit: What I tested was browsers interpolation on rotate3d
- 20:48:58 [fantasai]
- krit: Actually looks like all browsers do magic decomposing (matrix decomposing)
- 20:49:01 [fantasai]
- ????
- 20:49:33 [fantasai]
- krit: Suggest we always to matrix decomposing
- 20:49:48 [dbaron]
- s/Suggest/Suggest that when rotate3d() is involved/
- 20:49:51 [krit]
- for rotate3d we always decompose with matrix
- 20:50:03 [krit]
- thats is what all browsers do with the exception of chrome
- 20:50:19 [krit]
- chrome does number interpolation if the roatate is arround 0,0,1
- 20:50:21 [krit]
- 0,10
- 20:50:22 [Koji]
- Koji has joined #css
- 20:50:23 [krit]
- or 1,00
- 20:51:17 [krit]
- I can change the behavior of Chrome in WebKit to match all other browsers
- 20:51:23 [fantasai]
- fantasai: Is matrix decomposition satisfactory for what users would want to do?
- 20:51:44 [krit]
- I would expect that useres want number interpolation
- 20:51:54 [krit]
- but that is not what browsers seem to do
- 20:52:18 [fantasai]
- dbaron: Not that great
- 20:52:38 [krit]
- It seems unlikely that IE10 can change the behavior
- 20:52:52 [krit]
- it is already ready for shipping
- 20:54:31 [stearns]
- sylvaing: current behavior is used in our app frameworks - could be tricky to change
- 20:54:53 [stearns]
- <silence>
- 20:55:02 [hober]
- hober: i'm happy with krit's proposal on this issue
- 20:55:40 [sylvaing]
- it will be harder if we depend on the unprefixed version of the feature; also depends on other live content that may use this.
- 20:55:40 [fantasai]
- fantasai: So do we really want to lock that in? or just consider it a bug ?
- 20:56:11 [krit]
- A bug in browsers or implementation?
- 20:56:18 [fantasai]
- sylvaing: It's hard for us because we use this in our app frameworks.
- 20:56:18 [fantasai]
- fantasai: Usually the problem is switching behavior from a numeric interpolation case to a matrix decomposition one
- 20:56:21 [fantasai]
- fantasai: Other way around I understood from last time was not so much of a problem
- 20:56:23 [fantasai]
- TabAtkins: In first case, where everything's the same, would expect angle.
- 20:56:26 [fantasai]
- TabAtkins: But where vectors are different, would be weird.
- 20:56:28 [fantasai]
- TabAtkins: Even if we do numeric interpolation, interpolating the 3 args numerically is probably not what authors want.
- 20:56:32 [fantasai]
- dbaron: I think we want numeric interpolation when the 3 components are the same
- 20:56:40 [fantasai]
- TabAtkins: That would be minimally good
- 20:56:53 [fantasai]
- TabAtkins: That would at least allow rotation along an axis that is not x/y/z
- 20:57:07 [fantasai]
- dbaron: If authors want something more complicated to animate, then they have to explicitly split it up the way they want
- 20:57:27 [krit]
- I am unsure if Safari can implement numerical interpolation for rotate3d in general
- 20:57:44 [fantasai]
- fantasai: Seems better than matrix decomp
- 20:58:00 [fantasai]
- TabAtkins: So question is, do we normalize the vector before comparison?
- 20:58:04 [fantasai]
- Vincent: Don't think that'll work
- 20:58:16 [fantasai]
- krit: Spec wants the vectors to be normalized
- 20:58:31 [fantasai]
- krit: Safari doesn't, sticks on CoreAnimation
- 20:58:38 [fantasai]
- krit: Can't do numeric interpolation
- 20:59:08 [fantasai]
- sylvaing: That's their problem.
- 20:59:19 [fantasai]
- krit: This will mean that you'll have different behavior on Safari than other browsers
- 20:59:37 [fantasai]
- TabAtkins: Not strictly true. Safari just has to do some additional bookkeeping
- 20:59:41 [decadance]
- decadance has joined #css
- 21:00:20 [fantasai]
- dbaron suggests doing this on a telecon
- 21:00:37 [fantasai]
- Proposal A: rotate3d() always uses matrix decomposition
- 21:01:06 [fantasai]
- Proposal B: rotate3d() uses numeric interpolation when the first 3 arguments (defining the axis) match
- 21:01:30 [fantasai]
- Proposal C: roate3d() uses numeric interpolation when the first 3 arguments (defining the axis) match *after normalizing the vector*
- 21:01:57 [fantasai]
- A is implemented right now, but what authors will want
- 21:02:04 [fantasai]
- is B or C
- 21:02:17 [hober]
- RRSAgent: url?
- 21:02:17 [RRSAgent]
- I'm logging. Sorry, nothing found for 'url'
- 21:02:17 [fantasai]
- because otherwise can't rotate along axes other than xyz
- 21:02:41 [fantasai]
- krit: There is no B, spec says they are normalized
- 21:02:43 [plinss]
- rrsagent, pointer?
- 21:02:43 [RRSAgent]
- See http://www.w3.org/2012/08/13-css-irc#T21-02-43
- 21:02:50 [fantasai]
- TabAtkins: At what stage? Does it say computed values are normalized?
- 21:02:55 [fantasai]
- TabAtkins: If not, we can say that
- 21:03:17 [dbaron]
- The spec says it's normalized, but doesn't say when, so it's basically meaningless.
- 21:03:30 [fantasai]
- plinss: Only place that user would notice is when rotate takes you back where you came from?
- 21:03:34 [fantasai]
- dbaron: No, lots of cases
- 21:03:46 [fantasai]
- dbaron: If you decompose a 90deg rotation into 2 components, won't do exactly the same thing
- 21:04:03 [fantasai]
- dbaron: The bigger the angular difference, the more noticeable it is
- 21:04:13 [fantasai]
- dbaron: Past 180deg, will notice greatly because might get different direction of rotation
- 21:04:20 [fantasai]
- dbaron: or different number of rotations.
- 21:04:29 [dbaron]
- krit: Animating from negative vector to positive vector?
- 21:04:34 [dbaron]
- dbaron: Just count as a mismatched vector.
- 21:05:34 [fantasai]
- fantasai: So we're down to A or C.
- 21:05:45 [fantasai]
- fantasai: I think we should go with C, since that's what authors will want.
- 21:05:50 [fantasai]
- hober: Go with A, that's what's implemented
- 21:06:12 [fantasai]
- TabAtkins: This isn't a compat issue, so we don't need to do bugwards compat
- 21:07:22 [fantasai]
- plinss: My concern is that sometimes you get matrix decomposition behavior, and some cases you don't. Will authors be surprised about that?
- 21:07:32 [fantasai]
- hober, TabAtkins: it's predictable
- 21:07:54 [fantasai]
- TabAtkins: If the vector is the same, we interpolate otherwise not
- 21:08:53 [fantasai]
- Vincent: We have two vectors, right, we could ... even if they don't match
- 21:09:12 [fantasai]
- Vincent: Could do better behavior than decomposing
- 21:09:24 [fantasai]
- plinss: That would be less surprising to the author, I think
- 21:09:42 [fantasai]
- TabAtkins: So that would be option D, fully define interpolation
- 21:10:03 [fantasai]
- dbaron: There are a bunch of places where you'll have to make a lot of arbitrary decisions
- 21:10:33 [dbaron]
- dbaron: special behavior for antiparallel vectors? If so, use that behavior for any >90deg angle? What about 90deg angles?
- 21:10:50 [fantasai]
- hober: Would be nice if Simon were here for this
- 21:11:14 [fantasai]
- plinss: Anyone want to take an action to try to define D
- 21:11:28 [fantasai]
- ACTION Vincent: Write a proposal for vector interpolation for rotate3d()
- 21:11:29 [trackbot]
- Created ACTION-506 - Write a proposal for vector interpolation for rotate3d() [on Vincent Hardy - due 2012-08-22].
- 21:12:09 [fantasai]
- plinss: anything else?
- 21:12:31 [fantasai]
- krit: Can we publish after decision about rotate3d()?
- 21:12:38 [fantasai]
- plinss: How far are we from LC?
- 21:13:13 [fantasai]
- krit: Some minor issues, would also like to publish WD and ask for review before going to LC
- 21:13:20 [fantasai]
- plinss: Asking if this is last WD before LC
- 21:13:48 [fantasai]
- RESOLVED: Publish WD of Transforms after rotate3d() is resolved
- 21:14:00 [dbaron]
- s/rotate3d()/rotate3d() animation/
- 21:14:15 [dbaron]
- The other issue, by the way, is whether "falling back to matrix interpolation" means for the function or for the entire list.
- 21:14:19 [krit]
- http://dvcs.w3.org/hg/FXTF/raw-file/tip/masking/index.html
- 21:14:26 [dbaron]
- I think it should be just for the function.
- 21:14:39 [fantasai]
- krit: CSSWG decided to apply masking to HTML content, SVG WG ants to work together with CSSWG
- 21:14:47 [fantasai]
- krit: So we made FXTF draft for masking
- 21:14:56 [fantasai]
- krit: It's a proposal that just specifies ... for browsers
- 21:15:10 [fantasai]
- krit: We have Firefox that .. and we have Webkit that does something with masking
- 21:15:17 [fantasai]
- krit: Specification which tries to address both proposals
- 21:15:26 [fantasai]
- krit: Two different sets of properties
- 21:15:31 [fantasai]
- krit: One is mask-image, similar to bg image
- 21:15:45 [fantasai]
- krit: idea is that authors don't need to learn new syntax for it
- 21:15:53 [fantasai]
- krit: syntax is exactly the same
- 21:15:58 [fantasai]
- krit: behavior is same, just with masking
- 21:16:04 [fantasai]
- krit: masking process ... filter
- 21:16:20 [fantasai]
- krit: There's also 2nd set of properties mask-box-image
- 21:16:31 [fantasai]
- krit: similar to border-image
- 21:16:32 [krit]
- http://dvcs.w3.org/hg/FXTF/raw-file/tip/masking/index.html#mask-box-image
- 21:16:37 [drublic_]
- drublic_ has joined #css
- 21:16:52 [fantasai]
- krit: Does CSSWG want to go with this approach?
- 21:16:57 [fantasai]
- krit: any concerns about this?
- 21:17:37 [fantasai]
- fantasai: Are there use cases for all these properties?
- 21:17:46 [fantasai]
- krit: They are quite useful, easier/ more poweful than SVG masking
- 21:17:51 [fantasai]
- krit: So think it's very useful
- 21:18:11 [fantasai]
- krit: ...
- 21:18:17 [fantasai]
- krit: mask-box-image, used quite a lot
- 21:18:26 [fantasai]
- krit: still a feature that's heavily used on mobile devices today
- 21:18:54 [fantasai]
- fantasai: My opinion is basically if roc thinks it's a good idea, it's good
- 21:19:14 [fantasai]
- hober: harmonizing webkit-mask with SVG is a no-brainer, should continue to work on it
- 21:19:28 [fantasai]
- dbaron: Would like a chance for other to people look at it
- 21:19:49 [fantasai]
- krit: roc said same thing as you, fantasai
- 21:20:02 [fantasai]
- Vincent: Goal was to see if group thinks its a good idea to work on this
- 21:21:14 [fantasai]
- fantasai: Think it's good to work on this, think that idea of aligning with existing properties seems smart,
- 21:21:41 [fantasai]
- fantasai: Think that in cases where the values match an existing property, should refer to the definitions in the existing property rather than repeating it
- 21:22:00 [fantasai]
- e.g. postion should refer to definition of <position> in css3-background rather than duplicating it
- 21:22:28 [fantasai]
- dbaron: I'm a little unsure how high priority this should be
- 21:22:35 [fantasai]
- dbaron: There's been some stuff in webkit for awhile
- 21:22:45 [fantasai]
- dbaron: we've had a huge a mount of pressure for TTA, but not so much for masking
- 21:23:20 [fantasai]
- dbaron: That makes me think that there are a bunch of other things this group works on that are probably higher priority than this
- 21:23:26 [fantasai]
- krit: I can't disagree with that of course
- 21:23:39 [fantasai]
- krit: We want to address this in SVGWG, so don't see how it can harm the CSSWG
- 21:24:05 [fantasai]
- hober: In the contextof is it a priority, I've certainly had on my to-do item to spec -webkit-mask, so thankful to dirk for taking this on
- 21:24:32 [dbaron]
- s/TTA/transforms, transitions, and animations/
- 21:24:41 [fantasai]
- Bert: I have two questions
- 21:24:52 [fantasai]
- Bert: Since 'clip' has never been used, why would 'mask' be used more?
- 21:25:06 [fantasai]
- Bert: Second, isn't this a kind of filter
- 21:25:18 [fantasai]
- TabAtkins: We have lots of examples of -webkit-mask being used on the Web
- 21:25:36 [fantasai]
- krit: Used a lot for images and videos
- 21:25:56 [fantasai]
- krit: clip-mask can also be used similar to shapes in CSS exclusions
- 21:26:05 [fantasai]
- krit: I'm fine to specify if CSSWG wants
- 21:26:31 [fantasai]
- fantasai: Speccing something that replaces -webkit-mask with a standard feature seems like a good idea
- 21:27:17 [fantasai]
- hober: And doing it in a way that harmonizing with SVG is good
- 21:27:32 [fantasai]
- krit: Been in Webkit for 4 years
- 21:28:10 [fantasai]
- Leif: Not handled by other spec?
- 21:28:50 [fantasai]
- TabAtkins: Theoretically could be a filter, but like box-shadow, something that seems ot benefit from having its own property. Also SVG has its own masking already anyway
- 21:29:03 [fantasai]
- Mask the filters? :)
- 21:29:19 [dbaron]
- krit, also http://dvcs.w3.org/hg/FXTF/raw-file/tip/masking/index.html should say who the Editors are
- 21:29:29 [fantasai]
- krit: In SVG, masking, then filters, then clipping is separate step
- 21:29:53 [fantasai]
- jdaggett: Should we move on?
- 21:30:22 [fantasai]
- Topic deferred, giving dbaron &co to ask others for feedback
- 21:30:43 [fantasai]
- Topic: Writing Modes
- 21:30:51 [vhardy_]
- vhardy_ has joined #css
- 21:31:34 [fantasai]
- koji: In the end I would like one working group resolution, so would like to start from some background.
- 21:32:06 [fantasai]
- koji: UTR50 started last August
- 21:32:34 [fantasai]
- koji: At that point, there was a problem that UTR50 defines it scope to capture major us in Japanese, and there was probably a little different from what fantasai wanted for CSS3 Writing Modes
- 21:32:42 [fantasai]
- koji: So after UTR50 draft 1 was done, there was a lot of feedback
- 21:33:08 [fantasai]
- koji: But rather tha each codepoint issue, of upright vs. sideways, but what is scope and goal of UTR50 and scope/goal of Wirting Modes
- 21:33:17 [fantasai]
- koji: The editor, Eric, set scope to Japanese
- 21:33:26 [fantasai]
- koji: Most feedback I saw was scope should be global rather than Japanese
- 21:33:42 [fantasai]
- koji: Other feedback like multi-language / math expressions shoudl be handled
- 21:33:52 [fantasai]
- koji: Some people wnat that consistency by ignoring osme legacy usage
- 21:34:01 [fantasai]
- koji: Some people want better typogrpahy than what's used today
- 21:34:20 [fantasai]
- koji: Some issues resolved by discusison, but in the end , everyone wants different scope for UTR50 and discussion was stuck, and that's what I saw before the UTC
- 21:34:38 [fantasai]
- jdaggett: I don't think that's a fair representation because the basis of UTR50 was to make the default orientation a character proeprty
- 21:34:47 [fantasai]
- jdaggett: To not be a combination of other properties and font information
- 21:35:03 [fantasai]
- jdaggett: The original draft of Writing Modes had that as the defining factor of orientation
- 21:35:21 [fantasai]
- jdaggett: The goal of UTR50 was to give us a defautl distinction, that at least set Latin sideways, and kanji upright
- 21:35:28 [fantasai]
- jdaggett: beyond that, I don't think it's as important
- 21:35:32 [fantasai]
- koji: Everyone agrees with that
- 21:35:38 [fantasai]
- koji: Issues is about symbols
- 21:35:48 [fantasai]
- jdaggett: Key point is that this thing have consistency
- 21:36:00 [fantasai]
- jdaggett: Specifics of whether one symbols is upright/sideways is much less important
- 21:36:07 [fantasai]
- jdaggett: Just trying to set a set of reasonable default
- 21:36:19 [fantasai]
- jdaggett: If you're talking about math expressions in vertical text, you're off in the weeds
- 21:36:27 [fantasai]
- jdaggett: What has come out of UTC and the mail you sent around, this is the scope
- 21:36:35 [fantasai]
- jdaggett: That is much more confined scope, I'm fine with that
- 21:36:44 [fantasai]
- koji: The UTC resolved to tighten the scope
- 21:36:53 [fantasai]
- koji: Now UTR50 scope is Japanese and then East Asian
- 21:37:01 [fantasai]
- koji: And it's goal is interchangeability rather than better typography
- 21:37:06 [fantasai]
- koji: And to capture major use
- 21:37:19 [fantasai]
- florian: So they won't address non-EA things?
- 21:37:30 [fantasai]
- koji: I misunderstood at first point, but scope they mean priority
- 21:37:57 [fantasai]
- fantasai: Scope is all of Unicode
- 21:38:01 [dbaron]
- fantasai: Figure it out for all of Unicode -- the question is when different usage has conflicting requirements, then usage in East Asia win
- 21:38:23 [fantasai]
- koji: For that, usage in East Asia wins, and Japanese wins over that
- 21:38:38 [fantasai]
- koji: For some scripts, Unicode defines its scope to being able to write about such scripts, but not to write its native scripts
- 21:38:45 [dbaron]
- Florian: ...
- 21:38:52 [dbaron]
- jdaggett: and that's precisely why we shouldn't bikeshed on this
- 21:38:57 [jet]
- jet has joined #CSS
- 21:39:31 [fantasai]
- koji: Basic idea is goal of UTR50 is to interchange
- 21:39:42 [fantasai]
- koji: For various specific applications, encouraged to tailor
- 21:39:57 [fantasai]
- koji: So UTR50 resolved to go back or tighten the scope
- 21:40:14 [fantasai]
- koji: means if we follow UTR50, CSS Writing Modes scope would match that of UTR50
- 21:40:34 [fantasai]
- Florian: Question is They have changed the way they define everything, are we ok with that.
- 21:40:51 [fantasai]
- jdaggett: As long as there's not an uproar, then it's okay
- 21:41:25 [dbaron]
- fantasai: UTC's scope document (UTC member confidential) seemed reasonable to me
- 21:41:30 [dbaron]
- fantasai: though one point I wanted clarified
- 21:42:02 [dbaron]
- jdaggett: I think writing mode should just say that ... is defined by this property over here in Unicode.
- 21:42:16 [dbaron]
- fantasai: I think we just need them to publish a draft that has known errors fixed.
- 21:42:54 [dbaron]
- jdaggett: Koji, I'm upset that you were going to UTC meeting as representative of this group without informing us what was going on before it.
- 21:43:06 [dbaron]
- koji: I apologize for that.
- 21:43:16 [dbaron]
- koji: I prefer to use UTR50 as is, and I want to make sure everyone is ok with that.
- 21:43:20 [dbaron]
- jdaggett: I think we're all fine.
- 21:43:29 [dbaron]
- koji: UTC resolved not to do SVO for the first version.
- 21:43:47 [dbaron]
- koji: writing mode has text-orientation: upright. Discussion about whether upright is forced or smart.
- 21:43:54 [dbaron]
- koji: e.g., parentheses being upright
- 21:44:12 [dbaron]
- koji: UTC had resolved to add SVO to solve that
- 21:44:28 [dbaron]
- jdaggett: I think we should make text-orientation: upright be upright always
- 21:44:41 [dbaron]
- jdaggett: authors who want sideways parentheses should use sideways (or mixed)
- 21:44:52 [dbaron]
- koji: Could defer smart upright or define our own properties
- 21:44:58 [dbaron]
- fantasai: or refer to existing draft tables.
- 21:45:03 [dbaron]
- florian: it's an option, but we shouldn't pick it
- 21:45:23 [dbaron]
- jdaggett: It's only an illusion that this is smart. It only goes so far. It many situations it will not look right.
- 21:45:35 [dbaron]
- florian: This kind of table can only be maintained by Unicode.
- 21:45:47 [dbaron]
- Steve: I'd propose we either drop upright or leave it as forced upright as Koji suggested.
- 21:46:06 [dbaron]
- Steve: And we have the option, later, if a table for smart upright is later defined that we think is worth adopting, we have the option of adding a value to use that.
- 21:46:14 [dbaron]
- Florian: I think that's fair.
- 21:46:32 [dbaron]
- fantasai: My original intention with text-orientation that all values would be usable at a span level or at a paragraph level.
- 21:46:53 [dbaron]
- fantasai: If upright becomes forced-upright then forced upright is only usable on a particular span, because it breaks on hyphens, brackets.
- 21:47:02 [dbaron]
- fantasai: I don't see a use case where forced upright is better than upright.
- 21:47:09 [dbaron]
- Steve: Do you want to take upright out?
- 21:47:17 [dbaron]
- Steve: We don't have a definition of what smart upright would do.
- 21:47:23 [dbaron]
- jdaggett: We need upright in some situations.
- 21:47:31 [dbaron]
- jdaggett: Need to have it for making Latin upright.
- 21:47:59 [dbaron]
- Florian: I think we're in agreement.
- 21:48:25 [dbaron]
- fantasai: I'm not happy with upright being a forced upright, but I'm not going to override the WG.
- 21:48:40 [dbaron]
- fantasai: I don't think there's a use in having ...
- 21:48:46 [dbaron]
- fantasai: We could use the data that are already there.
- 21:49:00 [dbaron]
- Florian: I think having smart upright would be nice, but I wouldn't do it before Unicode defines and maintains what it means.
- 21:49:10 [dbaron]
- jdaggett: I think smart-upright is an illusion.
- 21:49:26 [dbaron]
- koji: UTC had some discussion on this, and they may add the value of ??? in the future.
- 21:49:53 [dbaron]
- Bert: Can you explain difference between smart and forced?
- 21:50:29 [dbaron]
- fantasai draws "(some-text)" in both forced and smart upright
- 21:50:49 [dbaron]
- jdaggett: With a regular font this isn't going to work, because regular fonts don't have vertical metrics.
- 21:51:00 [dbaron]
- fantasai: IF you have a font that has vertical metrics, or you're using capital letters...
- 21:51:19 [dbaron]
- fantasai: People want to do this on book spines and things -- to get this effect, you need to put spans around ( - and )
- 21:51:25 [dbaron]
- jdaggett: For the set of use cases here I think that's acceptable.
- 21:51:37 [dbaron]
- alan: esp. if you have to modify the spans individually for the lack of font metrics
- 21:51:47 [dbaron]
- fantasai: If you don't have vertical metrics you might as well use ...
- 21:52:33 [dbaron]
- Florian: I understand that smart upright is valuable, and I think we can pursue it in the next level based on what's going on in Unicode.
- 21:52:40 [dbaron]
- Peter: We're still calling the value 'upright'?
- 21:52:57 [dbaron]
- jdaggett: If you have smart upright, then you have no way of forcing character to upright
- 21:53:04 [dbaron]
- fantasai: You could use tate-chu-yoku.
- 21:53:08 [dbaron]
- RESOLUTION: text-orientation:upright is a forced upright; it always means upright
- 21:53:53 [dbaron]
- koji: Excel does forced upright up until 2007; switched to smart upright in 2007. Been doing vertical writing since 1995.
- 21:54:31 [dbaron]
- koji: Last one is HO property is being removed from UTR50 draft 7.
- 21:55:12 [dbaron]
- jdaggett: Mongolian and Phags-Pa are vertical-only languages, but for convenience when they are discussed in English text they are often rotated into the horizontal
- 21:55:25 [dbaron]
- jdaggett: The way the fonts are designed -- typically designed rotated 90 degrees.
- 21:55:43 [dbaron]
- jdaggett: The HO property was to call out set of scripts that have this behavior -- scripts that are vertical only but rotated left when displayed horizontally
- 21:55:51 [dbaron]
- Glenn: Goes back to history of Mongolian
- 21:56:19 [dbaron]
- [discussion of history of scripts]
- 21:56:38 [dbaron]
- jdaggett: It was never really a very important property, because it just said whether the script was Mongolian or Phags-Pa.
- 21:57:03 [dbaron]
- Koji: Some points have different orientation of glyphs from the Unicode code chart.
- 21:57:20 [dbaron]
- Koji: So to make visually correct orientation you have to render differently from UTR50.
- 21:57:33 [dbaron]
- Koji: Because UTR50 reflects against code charts, and code charts and fonts don't match.
- 21:58:22 [dbaron]
- jdaggett: Summarizing: the handling of Phags-Pa and Mongolian is different from other scripts in the way you deal with orientations, and you can leave it to implementations to figure that out.
- 21:58:33 [dbaron]
- (before prev line) Koji: ...
- 21:58:45 [dbaron]
- Steve: Using the horizontal metrics in vertical settings
- 21:59:15 [dbaron]
- jdaggett: Spec can write a simple sentence saying that the way fonts are designed for Mongolian and Phags-Pa are unique, and implementations need to deal with that separately.
- 21:59:37 [dbaron]
- fantasai: Problem is that the Unicod ecode charts have it upright as though in vertical text, but fonts have it sideways assuming reference is horizontal text.
- 21:59:45 [dbaron]
- Steve: Just the way people historically made the fonts.
- 22:00:31 [mvujovic]
- mvujovic has joined #css
- 22:00:33 [dbaron]
- Bert: schedule?
- 22:00:40 [dbaron]
- jdaggett: I think the draft needs cleanup first.
- 22:00:48 [dbaron]
- fantasai: Also need to wait for UTR50 to publish an update.
- 22:00:59 [dbaron]
- Steve: As long as it's in something equivalent to last call or one step away from...
- 22:01:10 [achicu]
- achicu has joined #css
- 22:01:15 [dbaron]
- jdaggett: First we need a WD that just says [...]
- 22:01:26 [dbaron]
- jdaggett: The ED right now points at a fictitious property.
- 22:01:46 [dbaron]
- Bert: What schedule do we expect? LC soon?
- 22:01:54 [dbaron]
- jdaggett: Depends on edits Koji makes in Unicode.
- 22:02:18 [dbaron]
- jdaggett: ... incorporates changes that have been discussed. Draft 7 will. Expect to publish next UTC (November).
- 22:02:22 [dbaron]
- s/jdaggett/koji/
- 22:02:40 [dbaron]
- koji: UTC has public review period after the draft. If people agree with it, could go quickly.
- 22:03:04 [dbaron]
- jdaggett: First step is to get a WD that says ...
- 22:03:17 [dbaron]
- fantasai: Other thing we were blocked on was an objection from Glenn on the naming of the logical directions.
- 22:03:38 [dbaron]
- Glenn: before/after vs. head/foot
- 22:03:51 [dbaron]
- Steve: Glenn made one objection, Murakami-san made one, I'm unhappy (but only unhappy)
- 22:04:10 [dbaron]
- jdaggett: Can we put an issue in the spec labeling this as an objection?
- 22:04:25 [dbaron]
- GLenn: Don't want to block this; I'm in the unhappy category.
- 22:04:33 [dbaron]
- Glenn: Some concern about cultural notion of head and foot.
- 22:04:38 [dbaron]
- jdaggett: Why can't we mark this as an issue?
- 22:04:47 [dbaron]
- jdaggett: shouldn't block this as a WD
- 22:04:53 [dbaron]
- [agreement, it seems]
- 22:05:05 [dbaron]
- [desire to resolve before LC]
- 22:05:24 [dbaron]
- Steve: Are people willing to reconsider this or should we go away and give up?
- 22:05:38 [dbaron]
- Florian: I'd prefer not to reconsider.
- 22:05:46 [dbaron]
- Peter: I'd prefer not to discuss discussing it right now.
- 22:06:02 [dbaron]
- Peter: We'll rename it before we go to last call. :-)
- 22:06:23 [dbaron]
- Topic: Lists
- 22:06:30 [fantasai]
- ScribeNick: fantasai
- 22:06:41 [fantasai]
- TabAtkins: There are two issues to talk about
- 22:06:53 [fantasai]
- TabAtkins: This has been sitting in WD because nobody has reviewed the draft yet
- 22:06:57 [fantasai]
- TabAtkins: Would like to advance the spec
- 22:07:05 [fantasai]
- TabAtkins: Otherwise I'll request LC
- 22:07:15 [fantasai]
- TabAtkins: In simplest case, marker positions are same
- 22:07:26 [fantasai]
- TabAtkins: Outside that, all implementations have different ideas of how markers are positioned
- 22:07:38 [fantasai]
- TabAtkins: spec is similar to what IE does, because that was sanest
- 22:07:47 [fantasai]
- Rossen: 3 years ago looked at it
- 22:08:04 [fantasai]
- Rossen: We spent a ton of time looking at list markesr and looked at all the different implementations
- 22:08:16 [fantasai]
- Rossen: As soon as you have anything other than simplest possible text with marker inside, all hell broke loose
- 22:08:37 [fantasai]
- dbaron: There's a section called marker positoining, but nowhere near long enough to cover all this
- 22:08:52 [fantasai]
- TabAtkins: Split across marker position and marker attachment
- 22:09:04 [fantasai]
- TabAtkins: Actual definition in Ch 7
- 22:09:20 [fantasai]
- TabAtkins: 7.1 defines behavior in terms of terms, and what that means.. then defined in ... right there
- 22:09:33 [dbaron]
- http://dev.w3.org/csswg/css3-lists/#positioning-markers
- 22:10:03 [fantasai]
- TabAtkins: If it's incomplete, please give me feedback. Correct me on anything that's wrong.
- 22:10:15 [fantasai]
- TabAtkins: Counter handling. Everybody is pretty sane on this
- 22:10:23 [fantasai]
- TabAtkins: Tried to tighten up definitions in the spec
- 22:10:37 [fantasai]
- TabAtkins: Added the counter-set property, equivalent to counter-reset, except doesn't create a new scope
- 22:10:47 [fantasai]
- TabAtkins: This is required if you want to implement HTML's value attribute in terms of CSS
- 22:11:02 [fantasai]
- TabAtkins: same as counter-increment, just sets to explicit value intead
- 22:11:52 [fantasai]
- TabAtkins discusses some weird case
- 22:12:07 [fantasai]
- TabAtkins: I defined the ::marker pseudo-element
- 22:12:13 [fantasai]
- TabAtkins: So you can style it, e.g. color the marker
- 22:12:26 [fantasai]
- TabAtkins: Can be done right now with hacks and markup tweaks, rather annoying to do
- 22:13:05 [fantasai]
- TabAtkins: marker-attachment property, was put in at request of bidi requirements groups
- 22:13:22 [fantasai]
- TabAtkins: To address the problem of list markers appearing on the wrong side
- 22:13:45 [fantasai]
- dbaron: I think this is a bad name
- 22:14:58 [fantasai]
- TabAtkins explains the use case
- 22:15:25 [fantasai]
- dbaron: We had a really long discussion about this at a TPAC
- 22:15:41 [arno]
- arno has joined #css
- 22:16:20 [fantasai]
- dbaron: Given that there's a whole bunch of issues with whether the marker follows text-align stuff, or whether it moves around floats, 'marker-attachment' sounds like it addresses those issues, and it doesn't
- 22:16:28 [fantasai]
- dbaron: maybe 'marker-side' or 'marker-direction'
- 22:16:43 [fantasai]
- Rossen: If it's an arrow, if it points to the left or the right? :)
- 22:17:40 [fantasai]
- plinss asks about marker direction of contents
- 22:17:57 [fantasai]
- TabAtkins: Last thing is inline list items
- 22:18:05 [jarek]
- jarek has joined #css
- 22:18:08 [fantasai]
- dbaron: Does it support list-style-position: outside
- 22:18:20 [fantasai]
- TabAtkins: Hm, probably should
- 22:18:36 [fantasai]
- TabAtkins: Ok, those were changes that need review
- 22:18:44 [fantasai]
- TabAtkins: Let's start with one jdaggett is pacing about
- 22:18:51 [fantasai]
- TabAtkins: Which is the question of user-defined identifiers
- 22:18:59 [fantasai]
- TabAtkins: Do we preserve the case of user-defined idents?
- 22:19:06 [fantasai]
- TabAtkins: ASCII case-fold?
- 22:19:09 [fantasai]
- TabAtkins: ..
- 22:19:19 [fantasai]
- http://wiki.csswg.org/topics/custom-ident-case-sensitivity
- 22:20:40 [stearns]
- jdaggett: we should design a simple system
- 22:20:53 [stearns]
- jdaggett: this is not very important
- 22:21:06 [stearns]
- jdaggett: CSS is otherwise case-insensitive
- 22:21:09 [fantasai]
- TabAtkins: Interesting thing here is that @counter-style lets you redefine idents, including case-insensitive ones in CSS2.1
- 22:21:29 [fantasai]
- jdaggett: users expect it to be case-insensitive
- 22:21:45 [fantasai]
- TabAtkins: So proposal is to make them case-insensitive, figure out which kind it is
- 22:22:02 [fantasai]
- jdaggett: Not always the best ways, but define something simple
- 22:22:14 [fantasai]
- jdaggett: for where handled within itself
- 22:22:23 [fantasai]
- Florian: Seems reasonable, but what do you do on the OM side of things?
- 22:22:49 [fantasai]
- Florian: Does the OM output the saem case as input or lowercase or what?
- 22:23:02 [fantasai]
- TabAtkins: Just do whatever OM does for idents
- 22:23:36 [fantasai]
- fantasai: What idents do depends on whether it's a predefined keyword or not
- 22:24:21 [fantasai]
- jdaggett: There are user idents in @font-feature rules
- 22:24:37 [fantasai]
- Florian: From an author point of view, jdaggett's proposal is best.
- 22:24:48 [fantasai]
- Florian: Question is if we will get this right on implementation side
- 22:25:23 [fantasai]
- dbaron: What is jdaggett proposing?
- 22:25:35 [fantasai]
- fantasai: Unicode lowercasing
- 22:25:55 [fantasai]
- dbaron: In some cases where there are user-defined idents, we want a mechanism for fast comparison
- 22:25:59 [fantasai]
- dbaron: such as atomization
- 22:26:21 [fantasai]
- dbaron: if there isn't a function that you can get a unique thing that you can compare, then we have a problem
- 22:26:27 [fantasai]
- dbaron: some unicode case comparisons that don't give you that
- 22:26:27 [smfr]
- animation keyframes use user idents too, which are exposed to JS via animation events
- 22:26:40 [fantasai]
- jdaggett: You might be thinking of full case mapping
- 22:26:46 [fantasai]
- jdaggett: Unicode has simple case mapping and full case mapping
- 22:27:08 [fantasai]
- jdaggett: full case mapping doesn't preserve lenght of a string, e.g. eszet will become double capital S
- 22:27:26 [fantasai]
- jdaggett: There's also a simple set that preserves length of string
- 22:28:25 [fantasai]
- fantasai raises issue of lowercasing, uppercasing, case-folding
- 22:28:41 [drublic]
- drublic has joined #css
- 22:28:43 [fantasai]
- ACTION jdaggett: propose case-comparison proposal
- 22:28:43 [trackbot]
- Created ACTION-507 - Propose case-comparison proposal [on John Daggett - due 2012-08-22].
- 22:29:10 [fantasai]
- TabAtkins: Should we resolve on ASCII-case-insensitivity
- 22:29:26 [fantasai]
- jdaggett: Uncertain about that
- 22:29:42 [fantasai]
- TabAtkins: It's in the platform, HTML has it in a number of places too
- 22:29:49 [fantasai]
- Bert: Agree with jdaggett that it's a weird thing
- 22:29:56 [mvujovic]
- mvujovic has joined #css
- 22:30:02 [fantasai]
- TabAkins: I'm concerned about going back to case-sensitive
- 22:30:19 [fantasai]
- plinss: So we're proposing to make idents case-insensitive in a form TBD
- 22:30:27 [fantasai]
- dbaron: I'd also like to resolve that the form will support atomization
- 22:30:52 [fantasai]
- dbaron: There has to be some conversion you can do once, such that you can do atomization
- 22:31:00 [fantasai]
- fantasai: I think that's true for all of the casing optimizations.
- 22:31:09 [fantasai]
- fantasai: You just can't do round-tripping.
- 22:31:18 [fantasai]
- plinss: What about Unicode normalization?
- 22:32:09 [fantasai]
- plinss: These identifiers are going to cross document boundaries, and cross into script. entirely possible that multiple style sheets applying to one page are generated by different people with different editors with different normalizations
- 22:32:13 [fantasai]
- jdaggett: then they will not match
- 22:32:26 [fantasai]
- dbaron: If we want to fix that, then we want to normalize the whole sheet as parse time
- 22:32:40 [fantasai]
- TabAtkins: I don't think you can avoid perf problems without doing that.
- 22:32:51 [fantasai]
- dbaron: You have to do it in so many different places.
- 22:33:31 [fantasai]
- dbaron: Unless you can test this for everything
- 22:33:55 [fantasai]
- fantasai: I think if we had a normalization form that worked for content, we could normalize the entire web platform on parse, and it'd be fine. But we don't have that.
- 22:35:36 [fantasai]
- fantasai: So I don't think we can do normalization until we have a normalization form that works.
- 22:35:41 [fantasai]
- plinss: That's valid feedback to i18n
- 22:36:19 [fantasai]
- plinss: This issue keeps coming up
- 22:36:24 [Zakim]
- Zakim has left #css
- 22:36:55 [fantasai]
- RESOLVED: user-idents in CSS are case-insensitive, insensitivity of a type TBD
- 22:37:20 [dbaron]
- ... but where the type of case comparison allows for atomization and hashing via a single up-front conversion
- 22:38:08 [fantasai]
- Topic: Counter Styles
- 22:38:46 [fantasai]
- fantasai: Previous discussion was to have counter styles in a different document
- 22:39:09 [fantasai]
- fantasai: Proposal is to put @counter-style with them
- 22:39:49 [fantasai]
- Florian: Point of splitting was to not put the counter styles list on the REC track
- 22:40:10 [dbaron]
- The definition of Caseless Matching (Case Folding) in Unicode 6.0 section 5.18 actually seems like it would be ok.
- 22:40:21 [Bert]
- scribe: Bert
- 22:40:53 [Bert]
- fantasai: Definitions of all counter styles in 2.1 make a good module.
- 22:41:06 [Bert]
- ... Finsihed and complete, after case-insens inssue.
- 22:41:16 [Bert]
- ... All the rest deals with a lot of things, not near LC
- 22:41:23 [Bert]
- ... It is holding up counter style
- 22:41:41 [Bert]
- ... So we might as well give it is own title
- 22:41:55 [Bert]
- jdaggett: As bare minimum ou need to [???]
- 22:42:05 [Bert]
- ... Splitteing counter-style
- 22:42:14 [stearns]
- s/???/address OM/
- 22:42:23 [Bert]
- TabAtkins_: Takes 5 mins to define.
- 22:42:43 [Bert]
- ... As soon as I have a checkout of the tetx.
- 22:43:16 [Bert]
- florian: jdaggett has an opinion, but not as strong as whether or not to define long list of counter styles normatively.
- 22:43:30 [Bert]
- ... We should on defining that long list.
- 22:43:34 [Bert]
- ... I vote for not.
- 22:43:46 [Bert]
- glenn: define whats in 2.1 and thats it.
- 22:43:54 [Bert]
- fantasai: Do't want to limit ot 2.1
- 22:44:13 [Bert]
- ... The criteria for 2.1 where basically what bert and howcome knew about.
- 22:44:31 [Bert]
- tantek: Will fantasai draw up ciriteria?
- 22:44:48 [Bert]
- dbaron: We shoukd have a def for the 2.1 one, Everyone impls them.
- 22:44:55 [dbaron]
- all the 2.0 ones
- 22:45:02 [dbaron]
- some of which were dropped from 2.1
- 22:45:02 [Bert]
- glenn: Want to focus on 2.1, want to see a proposal.
- 22:45:23 [Bert]
- fantasai: Want to see how hard it is for author to come with a style.
- 22:45:30 [Bert]
- ... If it is hard, we should prefedine
- 22:45:40 [Bert]
- ... Khmer might be easy for an author.
- 22:45:45 [Bert]
- ... CJK is not easy.
- 22:46:01 [Bert]
- glenn: mapping between numbers anbd symbols and then author can work it out.
- 22:46:08 [Bert]
- fantasai: hat's what were talking about
- 22:46:17 [Bert]
- jdaggett: Multiple ways of doing it.
- 22:46:44 [dbaron]
- http://www.w3.org/TR/2008/REC-CSS2-20080411/generate.html#propdef-list-style-type
- 22:46:49 [dbaron]
- has a bunch that are not in 2.1
- 22:47:10 [Bert]
- TabAtkins_: Should not define a common resource. W3C would not host it.
- 22:47:34 [Bert]
- glenn: rathole to define what is significnt or not, base don community size, e.g
- 22:47:53 [Bert]
- jdaggett: We do 't know what the quality is of the definitions we have.
- 22:48:00 [Bert]
- ... Should be a community effort.
- 22:48:23 [Bert]
- plinss: You say (1) we cannot define it, (2) it is a quality issue.
- 22:48:52 [jarek_]
- jarek_ has joined #css
- 22:49:16 [Bert]
- jdaggett: We cannot judge the quality. Who can jusge the Khmer numbering here?
- 22:49:30 [Bert]
- glenn: I was there and I talked with the government there.
- 22:49:44 [Bert]
- florian: We should draw a line somewhere.
- 22:50:09 [stearns]
- s/I talked with/would not accept a proposal unless it came from/
- 22:50:26 [Bert]
- tantek: jdaggett is asking for community. Community provides examples, test cases, etc. We can check them.
- 22:50:33 [Bert]
- jdaggett: We cannot check them.
- 22:50:46 [Bert]
- plinss: You aregue ther eis npublic review.
- 22:50:57 [Bert]
- florian: Toss it out to specialized group.
- 22:51:17 [Bert]
- SteveZ: Why doesn;'t the wikipedia solution work here? Put it out,
- 22:51:24 [Bert]
- ... Leave the community to get it right.
- 22:51:33 [Bert]
- ... *We* are not going to get it right.
- 22:51:41 [Bert]
- TabAtkins_: OK
- 22:51:49 [Bert]
- fantasai: I'd like a counter style smodule
- 22:51:57 [Bert]
- ... That defines 2.0 and 2.1 styles.
- 22:52:10 [Bert]
- ... And has informative appendix with the other currently in the draft.
- 22:52:19 [Bert]
- some people: no
- 22:52:28 [Bert]
- plinss: [missed]
- 22:52:37 [Bert]
- tantek: We have a wiki. Propose it there.
- 22:52:48 [Bert]
- ... If the community steps up, that's great. If not, too bad.
- 22:53:25 [Bert]
- koji: I agree wiki is good place to develop for a community. But o ce developed, how to put it in browsers?
- 22:53:38 [Bert]
- florian: You don't.
- 22:53:50 [Bert]
- ... Authors copy it it to their own style sheets.
- 22:54:07 [Bert]
- SteveZ: Knowing what we know, we would have creatred a registry.
- 22:54:25 [Bert]
- dbaron: here is the set in 2.0, I think all implemented in browsers.
- 22:54:40 [Bert]
- ... One value got split in current draft, because of multiple interpretations.
- 22:54:48 [Bert]
- ... CJK ideographic.
- 22:54:54 [Bert]
- ... Split into 6 values.
- 22:55:17 [Bert]
- fantasai: Complication with that one is that an author is not going to come up with that on hois own.
- 22:55:25 [Bert]
- ... Those should be in the required set of built-ins.
- 22:55:44 [Bert]
- dbaron: I think the required set should be the 2.0/2.1 set plus these 6.
- 22:56:01 [Bert]
- plinss: 2.0 is not the justification, it is just our source.
- 22:56:14 [Bert]
- tantek: What is already implemented is the justification.
- 22:56:24 [Bert]
- dbaron: It is sane and not a big addition.
- 22:56:35 [Bert]
- glenn: 2.1 list is enough for me.
- 22:56:45 [Bert]
- ... Everything else, incl 2.0, in a registry.
- 22:56:57 [Bert]
- dbaron: Don't kick out if it is implemented cross-browser.
- 22:57:18 [Bert]
- [discussion about what FF supports]
- 22:57:44 [Bert]
- florian: I can live with dbaron proposal. Not further than that.
- 22:57:53 [Bert]
- TabAtkins_: Everything else goes into registry on wiki.
- 22:58:00 [Bert]
- sylvaing: test cases?
- 22:58:13 [Bert]
- dbaron: I think I submitted some. May have been removed since.
- 22:58:25 [Bert]
- sylvaing: If no 2 impls, we can remove.
- 22:58:35 [Bert]
- ... Strat with that, everything goes to wiki.
- 22:58:45 [Bert]
- TabAtkins_: TEsting is easy, generate a 1000 numbers.
- 23:00:20 [Bert]
- RESOLVED: Move counter-style rule and symbols functions to the coutner stylesspec. Retain in that spec the 2.0, 2.1 and the six way cjk ideographic split. Move rest of counter styles to registry on W3C wiki.
- 23:01:01 [Bert]
- [discussion about origin of six-way split of cjk ideographic]
- 23:01:11 [Bert]
- florian: Mark 6-way split at risk?
- 23:01:24 [Bert]
- dbaron: Agreed.
- 23:01:53 [Bert]
- RESOLVED: {cont'd) and mark 6-way split at risk.
- 23:02:17 [Bert]
- glenn: I object to 6-way split. At risk is OK.
- 23:04:54 [arno]
- arno has joined #css
- 23:07:14 [jarek]
- jarek has joined #css
- 23:21:10 [fantasai]
- Topic: Editorship
- 23:21:17 [fantasai]
- Alan: Propos krit as editor on Filter effects
- 23:21:23 [fantasai]
- RESOLVED: krit as editor on Filter effects
- 23:21:26 [fantasai]
- Topic: Sticky Positioning
- 23:21:55 [jet]
- jet has joined #CSS
- 23:21:58 [fantasai]
- hober: I posted to www-style a proposal for adding a new position value
- 23:22:05 [fantasai]
- hober: called 'sticky'
- 23:22:10 [fantasai]
- hober: similar to relpos
- 23:22:31 [fantasai]
- fantasai: It's like a combination of relpos and fixedpos that actually works
- 23:24:54 [Koji]
- Koji has joined #css
- 23:26:04 [fantasai]
- hober: It's in-flow like relpos
- 23:26:14 [fantasai]
- hober: but the calculation of the offset is based on the intersection of the veiwport and the containing block
- 23:26:26 [fantasai]
- hober: common use cases are, e.g. sidebar in a web page
- 23:26:42 [fantasai]
- hober demonstrates
- 23:26:55 [fantasai]
- hober: This sort of thing is really common on the Web, using scroll events to emulate with JS
- 23:27:14 [fantasai]
- hober: All just a single new position value
- 23:27:26 [fantasai]
- hober: footer and header of table are always visible in viewport
- 23:27:49 [fantasai]
- hober shows address book that works like iPhone address book headers
- 23:28:25 [fantasai]
- plinss asks about a case of header and footer overlap
- 23:28:42 [fantasai]
- hober: So I think it might be worth, in the longer term, adding a property for handling collisions
- 23:28:49 [fantasai]
- hober: complicated if doing in multiple dimensions
- 23:28:57 [fantasai]
- by default would overlap
- 23:29:03 [fantasai]
- hober: Looking for resolution to pursue the feature
- 23:29:23 [fantasai]
- szilles: How does it behave for print?
- 23:29:31 [fantasai]
- fantasai: would be same as relpos
- 23:29:46 [dbaron]
- [5 conversations at once]
- 23:29:58 [fantasai]
- glazou: I think it's not that easy to specify
- 23:30:03 [fantasai]
- hober: I'll take an action to write a description
- 23:30:10 [fantasai]
- szilles: If I don't have scrolling it doesn't move
- 23:31:01 [dbaron]
- fantasai: Then you have the overlapping problem you have with fixed pos -- end up with tons of overlap. If you want this effect when printing you need to make space for it.
- 23:31:08 [fantasai]
- plinss^: why not print on every page
- 23:31:27 [fantasai]
- glazou: If I can describe it this was included in the P language
- 23:31:50 [fantasai]
- glazou: mechanism similar to pseudo-elements, you could select any element, such as viewport
- 23:32:08 [fantasai]
- glazou: then had an element, and on that you could say "min-y: 0" inside the viewport
- 23:32:21 [fantasai]
- glazou: meant element was always visible or invisible
- 23:32:35 [fantasai]
- hober: Common design pattern, ppl emulate a lot with JS
- 23:32:45 [fantasai]
- hober: But scrolling has gotten strange as time has gone on, so increasingly problematic
- 23:33:30 [fantasai]
- Rossen: One question I have, new value is that the behavior is not applicable or useful for position: absolute
- 23:33:38 [arronei]
- sticky, real world use case: http://store.apple.com/us/configure/MD102LL/A?=
- 23:33:40 [fantasai]
- hober: yes
- 23:33:48 [smfr]
- arronei: news.google.com sidebar
- 23:34:08 [fantasai]
- hober: Of all cases I've seen, makes more sense for in-flow positioning than out-of-flow. You want to leave space in flow for the item
- 23:34:37 [fantasai]
- plinss: Suggest considering abspos version of this
- 23:35:28 [fantasai]
- Bert: Seems you might want sticky differently in horizontal and vertical dimensions
- 23:35:54 [fantasai]
- hober: Suppose you had a wide table, not so tall
- 23:36:18 [fantasai]
- hober: you might want the column headers to stick the viewport, but if you scroll the table horizontally itself, you might want the row headers to stick within the viewport but not the scrolly
- 23:36:29 [fantasai]
- hober: is it the nearest scrollable ancestor that you stick to?
- 23:36:44 [fantasai]
- hober: do you have same decision in both dimensions?
- 23:36:48 [arno]
- arno has joined #css
- 23:36:49 [fantasai]
- hober: worth thinking about
- 23:37:08 [fantasai]
- plinss: Think proposal is for hober to write something up for css3-positioning
- 23:37:22 [fantasai]
- plinss: would you co-edit?
- 23:37:23 [fantasai]
- hober: either way
- 23:37:28 [arronei]
- hober: add the proposal to http://wiki.csswg.org/spec/css3-positioning
- 23:37:31 [fantasai]
- glazou: Suppose green is the viewport
- 23:38:02 [fantasai]
- glazou draws a big green box, left half has three black boxes stacked on top. Another black box below that, followed by red box, followed by blue box
- 23:38:24 [Rossen]
- smfr, an example is running shopping cart totals positioned to left/right of forms
- 23:38:25 [fantasai]
- glazou: with collision could you get them to stack?
- 23:38:27 [fantasai]
- overlap by default
- 23:38:39 [fantasai]
- hober: I think overlapping by default is the right behavior here, could reus collision later
- 23:38:49 [fantasai]
- hober: also question of percentage values, at what distance do you start sticking
- 23:39:03 [smfr]
- stacking gets hard; you end up with a float-like algorithm
- 23:39:22 [dbaron]
- I'm not convinced that reusing this same collision avoidance mechanism is the right thing.
- 23:39:26 [fantasai]
- Topic: Animations
- 23:40:17 [sylvaing]
- https://docs.google.com/spreadsheet/ccc?key=0Akz3Ts2PEQF2dE1fTHhJMlJBbnp6UmZNY2dzVHpEVGc
- 23:40:30 [fantasai]
- sylvaing: This describes list of issues we had at last F2F
- 23:40:41 [fantasai]
- sylvaing: some things fixed already
- 23:40:57 [fantasai]
- sylvaing: hopefully reach LC at TPAC or before
- 23:41:05 [fantasai]
- sylvaing: couple left over from Hamburg
- 23:41:09 [fantasai]
- sylvaing: where in cascade do images go?
- 23:41:23 [fantasai]
- sylvaing: I believe dbaron described what Gecko was doing
- 23:41:38 [fantasai]
- sylvaing: The emerging consensus was that transitions would happen at the very end
- 23:41:51 [fantasai]
- sylvaing: you would go from current animation value to the trnasition end, but never really resolved on it
- 23:42:00 [sylvaing]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=14713
- 23:42:07 [sylvaing]
- http://lists.w3.org/Archives/Public/public-fx/2012AprJun/0107.html
- 23:42:19 [fantasai]
- sylvaing: we discussed this part
- 23:42:21 [smfr]
- s/images/animations
- 23:42:27 [fantasai]
- sylvaing: here's gecko's cascade
- 23:42:30 [fantasai]
- sylvaing: we never resolved that
- 23:42:40 [fantasai]
- sylvaing: I haven't checked recent webkit, but they used to have .. at the bottom
- 23:42:57 [fantasai]
- sylvaing: in Gecko transitions are more important than animations
- 23:43:19 [fantasai]
- dbaron: Except we would start a transition during an animation?
- 23:43:36 [smfr]
- webkit still applies animations after everything else
- 23:43:39 [fantasai]
- dbaron: starting a transition happens when we detect a computed value change that was not caused by an animation
- 23:43:47 [fantasai]
- dbaron: the restyling operation..
- 23:43:57 [fantasai]
- dbaron: The before and after styles are different in the no-animation case
- 23:44:10 [fantasai]
- dbaron: I'm trying to remember what's the difference...
- 23:44:17 [fantasai]
- s/dbaron/sylvaing/
- 23:44:34 [fantasai]
- sylvaing: Other implementations don't let user !important and UA !important override animations. I think we do want that
- 23:44:39 [fantasai]
- dbaron: I think we do want that.
- 23:44:51 [fantasai]
- dbaron: Questio nis whether we want them under the other !important rules
- 23:45:46 [fantasai]
- sylvaing: so any opinions?
- 23:45:56 [fantasai]
- Florian: I remember having an opinion, but don't remember what it was
- 23:46:21 [fantasai]
- fantasai: What are the options?
- 23:46:49 [fantasai]
- sylvaing: Option A, animations are higher than UA and author !important rules
- 23:46:58 [fantasai]
- sylvaing: Gecko allows them to override
- 23:47:29 [fantasai]
- dbaron: Another option would be to put animations here, between author normal an dauthor override
- 23:47:42 [fantasai]
- fantasai: Where would scoped style fit in with that?
- 23:48:26 [fantasai]
- dbaron: Author override and scoped would be a group
- 23:48:48 [fantasai]
- dbaron: Question would be whether animations would go before the !important rules, or after them
- 23:49:20 [fantasai]
- fantasai: So either animations would come right before all the !importants, or it would come right after all the author styles (including !importants)
- 23:50:04 [fantasai]
- fantasai: I think having animations override user/UA !imporant rules it's not a good idea
- 23:50:48 [fantasai]
- dbaron explains why having transitions at the end of the cascade makes sense: the UA/user !important rules would prevent computed value changes that could trigger transitions
- 23:51:04 [fantasai]
- sylvaing: so user rules could start them, but that's just about it
- 23:51:14 [fantasai]
- glazou: I'm using them in BlueGryffon to prevent animations to run
- 23:51:45 [fantasai]
- dbaron: Use case: user wants to override colors, but is fine with animations causing movement
- 23:53:12 [fantasai]
- RESOLVED: Animations are below user !important rules, not above them. [still discussing whether below or above author !important]
- 23:53:47 [fantasai]
- fantasai: So remaining question is whether author !important override animations or not
- 23:54:41 [glazou]
- glazou: yes I think both User and Author !important should override animations
- 23:55:34 [fantasai]
- RESOLVED: Animations override all normal rules, but are overridden by all !important rules.
- 23:56:24 [fantasai]
- RESOLVED: Transitions happen last in the cascade
- 23:56:42 [sylvaing]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=14713
- 23:57:09 [fantasai]
- sylvaing: snapshotting of values at the start of animation, action on smfr and dbaron on which properties snapshot or not
- 23:57:15 [fantasai]
- sylvaing: talk about that yet?
- 23:57:18 [fantasai]
- dbaron: not yet, no
- 23:58:28 [fantasai]
- sylvaing: Raised by ...
- 23:58:37 [fantasai]
- sylvaing: afaict not used
- 23:58:41 [fantasai]
- dbaron: Yes, let's remove them
- 23:59:03 [fantasai]
- RESOLVED: Remove initAnimationEvent method https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338
- 23:59:26 [fantasai]
- sylvaing: need to define a constructor
- 00:00:01 [sylvaing]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=14781
- 00:00:17 [fantasai]
- sylvaing: Spec doesn't specify starting frmae / ending frame, spec defines generating them but doesn't define when ...
- 00:00:33 [fantasai]
- dbaron: I believe we update it dynamically
- 00:00:42 [fantasai]
- sylvaing: at some point you have your first frame, and others follow.
- 00:00:48 [fantasai]
- dbaron: You're animating from that to some other pont
- 00:01:04 [fantasai]
- dbaron: if there's a style change that changes here, you're following this line instead of this line
- 00:01:13 [fantasai]
- Florian: You put a transition for the adjustment being smooth?
- 00:01:16 [fantasai]
- dbaron: Yes, maybe?
- 00:01:37 [fantasai]
- sylvaing: I think we do it static at the moment. Think Webkit does too
- 00:02:09 [fantasai]
- hober: Should be snapshotting after delay
- 00:02:15 [fantasai]
- sylvaing: but compute first frame, last frame
- 00:02:24 [fantasai]
- sylvaing: we didn't have a use case for dynamic case
- 00:02:38 [fantasai]
- dbaron: My worry about dynamic case is mostly style changes that are nearly sequential
- 00:02:50 [fantasai]
- dbaron: Because it'll expose when browsers coalesce things or not
- 00:02:56 [jdaggett]
- jdaggett has joined #css
- 00:02:56 [fantasai]
- dbaron: Would like to minimize how much that's exposed
- 00:03:01 [leaverou_]
- leaverou_ has joined #css
- 00:04:16 [fantasai]
- sylvaing: Is that related to issue of which properties to snapshot?
- 00:04:25 [fantasai]
- dbaron: testcases with a 5s delay are annoying
- 00:05:23 [fantasai]
- dbaron: If I move th emouse into it while animating, it jumps to other position while animating
- 00:05:30 [fantasai]
- sylvaing: Shouldn't this relate to general snapshotting issue?
- 00:05:34 [fantasai]
- sylvaing: ok, think it's the same bug
- 00:06:23 [sylvaing]
- https://www.w3.org/Bugs/Public/slhow_bug.cgi?id=15850
- 00:07:09 [fantasai]
- sylvaing: I don't understand how you get an invalid rule here
- 00:07:15 [smfr]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=15850
- 00:08:14 [fantasai]
- sylvaing: Have a few more edits, then ask for new WD
- 00:09:58 [fantasai]
- RESOLVED: Publish updated WD with those edits
- 00:10:26 [fantasai]
- sylvaing: Aiming for LC at TPAC or before
- 00:11:57 [fantasai]
- Topic: Scientific Notation
- 00:12:54 [fantasai]
- TabAtkins: Required for SVG.
- 00:13:12 [fantasai]
- dbaron: Unitless lengths and scientific notation are allowed in SVG attributes.
- 00:13:41 [fantasai]
- TabAtkins: One use is to align with SVG
- 00:13:51 [fantasai]
- TabAtkins: Other is it's useful in transformation matrices
- 00:14:25 [fantasai]
- TabAtkins: Syntax spec already defines parsing for it, just have a flag for it to turn it on or off. So no additional work on the spec side.
- 00:14:48 [dbaron]
- 8.574e-21parsec == 1px
- 00:14:50 [fantasai]
- Florian: I will not object to scinot, but I'm not interested in it
- 00:15:17 [fantasai]
- plinss: Any objections to adding scientific notation?
- 00:15:20 [fantasai]
- Bert: Yes.
- 00:15:47 [fantasai]
- Bert: I'm not happy with what we add, we don't have anything left for normal people.
- 00:16:22 [fantasai]
- hober: Tab has two use cases
- 00:16:30 [fantasai]
- hober: I don't consider them incredibly important, but they're reasonable.
- 00:16:45 [fantasai]
- fantasai: I defer to dbaron.
- 00:16:54 [fantasai]
- dbaron: I'm against it, but I'm not going to object.
- 00:17:01 [fantasai]
- fantasai: That's my opinion.
- 00:17:06 [fantasai]
- szilles: I'm not opposed, I'm not for
- 00:17:18 [fantasai]
- alan: I think rationalizing things with SVG seems reasonable to do
- 00:17:28 [fantasai]
- szilles: Useful, but not critical.
- 00:18:11 [fantasai]
- Florian: which definition of scinot is this?
- 00:18:37 [fantasai]
- Tab: Same as SVG. Number e integer
- 00:18:50 [fantasai]
- Florian: How does this interact with minimum you're supposed to support
- 00:19:21 [fantasai]
- TabAtkins: Turns into equivalent number
- 00:19:35 [fantasai]
- dbaron: scinot is not valid in integers, only valid in numbers
- 00:19:45 [fantasai]
- dbaron: Don't want to deal with scinot in integers
- 00:20:45 [fantasai]
- TabAtkins quotes his spec text
- 00:21:28 [fantasai]
- dbaron and TabAtkins discuss parsing problems
- 00:21:38 [fantasai]
- and floats
- 00:21:43 [fantasai]
- hober: Just force it to be a number
- 00:22:06 [fantasai]
- ....
- 00:22:24 [fantasai]
- dbaron: Things that are integer are things we will represent using an integer rather than a floating type. Really don't want to encourage people to do exponents
- 00:22:46 [fantasai]
- Florian: Since you don't care either way, when we're specifying precision of support, shouldn't require ... cancel out
- 00:23:04 [fantasai]
- TabAtkins: So you're allowed to do truncation as you're parsing
- 00:23:28 [fantasai]
- dbaron: SVG's integer type does not accept scinot
- 00:23:34 [dbaron]
- http://www.w3.org/TR/SVG11/types.html#BasicDataTypes says <integer> doesn't take scientific notation and <number> does
- 00:23:58 [fantasai]
- proposal: scinot for <number>, allow range-checking based on parse time as well as interpretation-time limits
- 00:25:20 [fantasai]
- straw poll -> no consensus
- 00:25:34 [fantasai]
- Straw poll again, more formally
- 00:25:36 [fantasai]
- glazou: yes
- 00:25:39 [fantasai]
- bert: NO
- 00:25:42 [fantasai]
- koji: abstain
- 00:25:44 [fantasai]
- szilles: yes
- 00:25:48 [jdaggett]
- jdaggett: no
- 00:25:55 [fantasai]
- glenn: yes
- 00:26:00 [fantasai]
- hober: abstain abstain
- 00:26:04 [fantasai]
- alan: yes
- 00:26:12 [fantasai]
- fantasai: defer to dbaron
- 00:26:15 [fantasai]
- tantek: defer to dbaron
- 00:26:16 [dbaron]
- dbaron: no, but not objecting
- 00:26:17 [fantasai]
- Tab: yes
- 00:26:21 [smfr]
- yes
- 00:26:24 [fantasai]
- Florian: abstain
- 00:26:32 [fantasai]
- leif: why not, yes
- 00:26:35 [fantasai]
- plinss: yes
- 00:27:03 [fantasai]
- "Simon says"
- 00:27:11 [smfr]
- :D
- 00:28:31 [fantasai]
- Bert: Not really fair to ask every F2F until not enough around
- 00:28:34 [fantasai]
- who disagree
- 00:29:15 [fantasai]
- 5 no, 8 yes
- 00:29:30 [fantasai]
- RESOLVED: add scinot to CSS
- 00:29:50 [fantasai]
- Topic: text-size-adjust
- 00:30:00 [fantasai]
- dbaron: Don't know what there is to discuss...
- 00:30:07 [fantasai]
- tantek: Question is about going to FPWD
- 00:30:11 [fantasai]
- dbaron: Think I'd rather not.
- 00:30:14 [dbaron]
- with the ED as is
- 00:30:14 [fantasai]
- Meeting closed.
- 00:30:30 [jdaggett]
- but it's just 5:30?
- 00:31:42 [stearns]
- text-size-adjust shut the whole thing down
- 00:33:14 [smfr]
- smfr has left #css
- 00:35:11 [glazou]
- glazou has joined #css
- 00:46:16 [glenn]
- glenn has joined #css
- 00:50:43 [arno]
- arno has joined #css
- 02:35:21 [achicu]
- achicu has joined #css
- 02:35:31 [achicu]
- achicu has left #css
- 03:14:57 [dbaron]
- dbaron has joined #css
- 03:30:27 [shepazu]
- shepazu has joined #css
- 04:06:03 [leaverou]
- leaverou has joined #css
- 05:02:23 [dholbert]
- dholbert has joined #css
- 05:22:38 [dbaron]
- dbaron has joined #css
- 05:32:46 [fantasai]
- fantasai has joined #css
- 05:33:00 [macpherson]
- macpherson has joined #css
- 05:33:31 [hober]
- hober has joined #css
- 05:33:55 [dholbert]
- dholbert has joined #css
- 05:33:55 [plinss]
- plinss has joined #css
- 05:34:00 [stearns]
- stearns has joined #css
- 05:34:11 [paul___irish]
- paul___irish has joined #css
- 05:34:20 [logbot]
- logbot has joined #css
- 05:34:24 [heycam]
- heycam has joined #css
- 05:35:03 [CSSWG_LogBot]
- CSSWG_LogBot has joined #css
- 05:35:11 [gsnedders]
- gsnedders has joined #css
- 05:35:12 [shans_away]
- shans_away has joined #css
- 05:35:12 [glazou]
- glazou has joined #css
- 05:35:31 [sylvaing_away]
- sylvaing_away has joined #css
- 05:36:01 [vhardy_away]
- vhardy_away has joined #css
- 05:36:31 [alexmog_away]
- alexmog_away has joined #css
- 06:39:34 [leaverou]
- leaverou has joined #css
- 06:42:43 [Ms2ger]
- Ms2ger has joined #css
- 06:42:46 [jet]
- jet has joined #CSS
- 07:00:34 [leaverou]
- leaverou has joined #css
- 08:16:57 [tantek]
- tantek has joined #css
- 08:20:13 [tantek]
- tantek has joined #css
- 09:01:27 [drublic]
- drublic has joined #css
- 09:27:28 [SimonSapin]
- SimonSapin has joined #css
- 10:11:38 [karl]
- karl has joined #css
- 12:51:00 [miketaylr]
- miketaylr has joined #css
- 14:29:38 [krit]
- krit has joined #css
- 14:33:30 [glenn]
- glenn has joined #css
- 14:34:51 [ksweeney]
- ksweeney has joined #css
- 14:36:32 [ksweeney]
- ksweeney has left #css
- 14:41:44 [dbaron]
- dbaron has joined #css
- 14:59:21 [jet]
- jet has joined #CSS
- 14:59:45 [myakura]
- myakura has joined #css
- 15:25:58 [jet_]
- jet_ has joined #CSS
- 15:39:55 [drublic_]
- drublic_ has joined #css
- 15:51:25 [drublic]
- drublic has joined #css
- 15:59:40 [cabanier]
- cabanier has joined #css
- 16:05:14 [jet]
- jet has joined #CSS
- 16:08:49 [shepazu]
- shepazu has joined #css
- 16:14:17 [jet]
- jet has joined #CSS
- 16:46:57 [Rossen]
- Rossen has joined #css
- 16:53:59 [dbaron]
- dbaron has joined #css
- 17:44:04 [arno]
- arno has joined #css
- 18:06:14 [jet]
- jet has joined #CSS
- 18:17:39 [jet]
- jet has joined #CSS
- 18:36:28 [dbaron]
- dbaron has joined #css
- 18:42:39 [jet_]
- jet_ has joined #CSS
- 18:54:08 [krit]
- krit has joined #css
- 18:58:31 [lstorset]
- lstorset has joined #css
- 18:58:53 [arno]
- arno has joined #css
- 19:05:53 [jet]
- jet has joined #CSS
- 19:09:07 [shepazu]
- shepazu has joined #css
- 19:43:26 [jet]
- jet has joined #CSS
- 19:53:21 [shepazu]
- shepazu has joined #css
- 20:00:38 [dbaron]
- dbaron has joined #css
- 20:02:10 [jet]
- jet has joined #CSS
- 21:14:09 [bradk]
- bradk has joined #css
- 21:14:17 [dbaron]
- dbaron has joined #css
- 21:15:46 [bradk]
- Hello. Anything happening here?
- 21:16:40 [ksweeney]
- ksweeney has joined #css
- 21:16:59 [ksweeney]
- ksweeney has left #css
- 21:21:02 [vhardy_]
- vhardy_ has joined #css
- 21:31:37 [hober]
- bradk: f2f finished yesterday
- 21:32:13 [bradk]
- Ah. No wonder. I thought it was also today.
- 21:47:28 [vhardy_]
- vhardy_ has joined #css
- 21:51:06 [vhardy_]
- vhardy_ has joined #css
- 21:53:47 [vhardy_]
- vhardy_ has joined #css
- 21:55:25 [krit]
- krit has left #css
- 22:05:34 [vhardy_]
- vhardy_ has joined #css
- 22:37:46 [vhardy_]
- vhardy_ has joined #css
- 22:57:22 [drublic]
- drublic has joined #css
- 23:02:47 [vhardy_]
- vhardy_ has joined #css
- 23:04:39 [vhardy_]
- vhardy_ has joined #css
- 23:05:49 [vhardy_]
- vhardy_ has joined #css
- 23:15:35 [dbaron]
- dbaron has joined #css
- 23:36:52 [arno]
- arno has joined #css
- 23:44:00 [vhardy_]
- vhardy_ has joined #css
- 23:48:37 [krit]
- krit has joined #css
- 00:02:40 [arno]
- arno has joined #css
- 00:12:05 [vhardy_]
- vhardy_ has joined #css
- 00:28:10 [vhardy_]
- vhardy_ has joined #css
- 00:58:17 [krit]
- krit has joined #css
- 01:07:24 [arno]
- arno has joined #css
- 01:17:30 [miketaylr]
- miketaylr has joined #css
- 01:19:25 [vhardy_]
- vhardy_ has joined #css
- 01:43:49 [vhardy__]
- vhardy__ has joined #css
- 02:58:16 [drublic]
- drublic has joined #css
- 03:28:54 [vhardy_]
- vhardy_ has joined #css
- 03:41:13 [vhardy_]
- vhardy_ has joined #css
- 03:49:11 [dbaron]
- dbaron has joined #css
- 04:28:14 [vhardy_]
- vhardy_ has joined #css
- 04:58:45 [drublic]
- drublic has joined #css
- 05:22:40 [vhardy_]
- vhardy_ has joined #css
- 07:32:37 [Ms2ger]
- Ms2ger has joined #css
- 07:57:43 [tantek]
- tantek has joined #css
- 08:59:35 [drublic]
- drublic has joined #css
- 09:15:33 [SimonSapin]
- SimonSapin has joined #css
- 09:29:47 [drublic]
- drublic has joined #css
- 11:00:35 [drublic_]
- drublic_ has joined #css
- 11:33:01 [krijnh]
- krijnh has joined #css
- 11:43:58 [florianr]
- florianr has joined #css
- 13:10:52 [arronei]
- arronei has joined #css
- 13:57:23 [jdaggett]
- jdaggett has joined #css
- 14:13:39 [vhardy_]
- vhardy_ has joined #css
- 14:41:24 [miketaylr]
- miketaylr has joined #css
- 14:44:34 [jarek]
- jarek has joined #css
- 14:52:14 [vhardy_]
- vhardy_ has joined #css
- 15:15:28 [vhardy_]
- vhardy_ has joined #css
- 15:19:01 [dbaron]
- dbaron has joined #css
- 15:59:26 [leaverou]
- leaverou has joined #css
- 16:29:42 [arno]
- arno has joined #css
- 16:30:11 [TabAtkins]
- TabAtkins has joined #css
- 16:39:12 [krit]
- krit has joined #css
- 17:01:50 [dbaron]
- dbaron has joined #css
- 17:11:15 [jet]
- jet has joined #CSS
- 17:19:05 [jet_]
- jet_ has joined #CSS
- 17:28:18 [jet]
- jet has joined #CSS
- 17:41:26 [jet_]
- jet_ has joined #CSS
- 18:19:33 [dbaron]
- dbaron has joined #css
- 19:55:20 [tantek]
- tantek has joined #css
- 20:18:39 [drublic]
- drublic has joined #css
- 20:23:39 [isherman]
- isherman has joined #css
- 20:43:09 [drublic]
- drublic has joined #css
- 21:11:30 [jarek]
- jarek has joined #css
- 21:20:08 [drublic]
- drublic has joined #css
- 21:27:06 [arno]
- arno has joined #css
- 21:40:25 [arno]
- arno has joined #css
- 22:00:20 [miketaylr]
- miketaylr has joined #css
- 22:22:07 [tantek]
- tantek has joined #css
- 00:12:31 [drublic]
- drublic has joined #css
- 00:50:05 [myakura]
- myakura has joined #css
- 00:57:19 [myakura]
- myakura has joined #css
- 01:25:26 [tantek]
- tantek has joined #css
- 02:47:54 [miketaylr]
- miketaylr has joined #css
- 04:00:25 [krit]
- krit has joined #css
- 07:58:13 [Ms2ger]
- Ms2ger has joined #css
- 09:38:43 [drublic]
- drublic has joined #css
- 09:54:14 [drublic]
- drublic has joined #css
- 10:07:25 [drublic]
- drublic has joined #css
- 12:32:09 [koji]
- koji has joined #css
- 13:11:52 [drublic]
- drublic has joined #css
- 14:13:07 [koji]
- koji has joined #css
- 14:37:00 [lstorset]
- lstorset has joined #css
- 15:35:07 [drublic]
- drublic has joined #css
- 16:08:49 [drublic]
- drublic has joined #css
- 17:04:31 [drublic]
- drublic has joined #css
- 20:13:06 [cabanier]
- cabanier has joined #css
- 21:17:02 [jarek]
- jarek has joined #css
- 21:18:04 [jarek]
- jarek has joined #css
- 21:28:48 [leaverou]
- leaverou has joined #css
- 23:11:04 [drublic]
- drublic has joined #css
- 23:43:59 [Liam]
- Liam has joined #css
- 23:56:00 [tantek]
- tantek has joined #css
- 00:01:26 [tantek]
- tantek has joined #css
- 01:02:21 [tantek]
- tantek has joined #css
- 01:16:10 [tantek]
- tantek has joined #css
- 01:17:22 [tantek_]
- tantek_ has joined #css
- 03:03:23 [tantek]
- tantek has joined #css
- 04:10:49 [tantek]
- tantek has joined #css
- 06:57:24 [tantek]
- tantek has joined #css
- 07:02:41 [Ms2ger]
- Ms2ger has joined #css
- 07:38:16 [tantek_]
- tantek_ has joined #css
- 08:07:45 [jet]
- jet has joined #CSS
- 08:20:26 [jet]
- jet has joined #CSS
- 08:30:39 [tantek]
- tantek has joined #css
- 11:33:26 [drublic]
- drublic has joined #css
- 20:10:15 [jarek]
- jarek has joined #css
- 20:49:23 [leaverou_]
- leaverou_ has joined #css
- 22:23:57 [leaverou]
- leaverou has joined #css
- 02:07:07 [leaverou]
- leaverou has joined #css
- 06:56:13 [leaverou]
- leaverou has joined #css
- 07:06:39 [leaverou]
- leaverou has joined #css
- 07:52:43 [drublic]
- drublic has joined #css
- 08:20:12 [drublic]
- drublic has joined #css
- 08:49:06 [drublic]
- drublic has joined #css
- 10:13:27 [SimonSapin]
- SimonSapin has joined #css
- 11:16:32 [drublic]
- drublic has joined #css
- 12:05:31 [drublic]
- drublic has joined #css