- From: fantasai <fantasai.lists@inkedblade.net>
- Date: Fri, 27 Apr 2018 14:29:14 -0700
- To: www-style@w3.org
========================================= These are the official CSSWG minutes. Unless you're correcting the minutes, Please respond by starting a new thread with an appropriate subject line. ========================================= Sizing ------ - RESOLVED: Treat indefinite percentages in min-width and min-height as 0. (Issue #2384) - RESOLVED: Add a note to the spec explaining this problem (adding a 'size' shorthand for 'width'/'height') and move this issue to level 4. (Issue #820) - RESOLVED: Publish a new WD of Sizing with all current resolutions edited in. Flexbox ------- - RESOLVED: Tables defines used min-size to fold in its min-content size where necessary (for 'table-layout: auto'); Flexbox ensures it is hooked up to this terminology when looking up an item’s minimum size. - RESOLVED: Have an initial ED of Flexbox L2, defining combination w/ additional alignment values and gap properties. Overflow -------- - RESOLVED: Allow 2 values on the overflow property in physical x/y order for any existing values. - RESOLVED: add block and inline longhands to overscroll-behavior - RESOLVED: text-overflow and resize apply to elements with 'overflow: clip' just as they apply to elements with 'overflow: hidden' - RESOLVED: when 'overflow: clip' is propagated to the viewport it changes to 'overflow: hidden' the same way 'visible' is changed to 'auto' ===== FULL MINUTES BELOW ====== Agenda: https://wiki.csswg.org/planning/berlin-2018#schedule Scribe: dael Sizing ====== Does indefinite min-height: N% fall back to zero or auto? --------------------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/2384 TabAtkins: This is for min-width and height. Do they fallback to auto or 0? General rule is we fall back to initial value. Is that 0 or auto? Initial used to be 0, changed to auto. TabAtkins: 2.1 explicitly says they're treated as 0, but it was probably on the assumption that 0 was the initial value. TabAtkins: Only real case is you have a flex item and you can't resolve the min-height should it be auto or 0? TabAtkins: I'm of the opinion it should be auto. Rossen: Current? TabAtkins: 0 which was previous initial value. TabAtkins: Change to be consistent with the change to initial. fantasai: I'm trying to wrap my head around when this would be different. astearns: Last time we discussed 0% when we said it should be 0 it's different on width then min-width. fantasai: auto for width isn't the same as min-width. astearns: We could throw out the calc on min-width if it's doesn't resolve. TabAtkins: Either the percent zeroes out or we throw it out. fantasai: Makes more sense. tantek: Treat min-width and min-height the same as we just resolved to deal with percentages. astearns: So it's zero rather then auto. TabAtkins: Still a change from current. calc is replaced with 0. Current is calc(10%+10px)=0. Now it's =10px. fantasai: This makes the most sense. Consistent with margins and padding. fantasai: If you set min-width to a non-auto size you're not expecting it to look at content. astearns: Proposal: treat indefinite % in min-width and min-height as 0 RESOLVED: Treat indefinite percentages in min-width and min-height as 0. Rossen: This is web compat? TabAtkins: If you have a complex calc it's a change. Percent-only is the same. Adding a 'size' shorthand for 'width'/'height' ---------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/820 fantasai: Shorthands are nice. We have them for many things, but not combo of width and height. fantasai: We hadn't added that because there's a size property0like thing that the @page has that does not behave anything like this shorthand would. That sets the size of the writing box. fantasai: Options are do something weird where size works differently for @page. Other option is some other word than 'size'. "box-size" is the current issue in the suggestion. fantasai: It would be the shorthand for block-size and inline-size. min-box-size/max-box-size would be for the min/max props. florian: Naming conflict is that bad? fantasai: It's a descriptor technically, but operating on a box that accepts other properties that apply to boxes. It'll be weird forever. TabAtkins: Weird because page takes width and height and size should be a property there. Conflict itself is weird but especially in the exact case. TabAtkins: box-sizing is too close to box-size dbaron: box-size and block-size might be confused by some. <tantek> indeed Rossen: What is the motivation here? TabAtkins: People want to set width and height together. florian: When people want to say something different they repeat themselves. fantasai: It's likely you'll want both to a keyword like auto or 100% or contain. TabAtkins: Equal sizing is reasonable. Rossen: The short shorthand is always going to give you squares. florian: If you do percent it will not. TabAtkins: Unless box-size 50% is same for height and width. fantasai: If we didn't have a naming conflict this would be in the spec already. florian: I'd ignore the naming conflict and say you can't use it in @page rule astearns: I don't like that because if you don't know anything about @page it's surprising. astearns: Here I've found I have to use it and the styles I set up perfectly are no longer good. florian: It's the code you wrote to size the page, that would be weird. <fantasai> @page { size: 8.5in 11in; } <fantasai> @page { size: letter; } rune: Page doesn't match any elements? florian: No. astearns: I'm thinking copying from another container. emilio: I think having a special-case for @page rule for page rule isn't worth it. astearns: First comment TabAtkins said is people have been asking for this and it would be mildly useful. I'm not sure mildy is worth it. fantasai: I've had people bug me for this. Those people are not sitting here. astearns: I'm not hearing consensus on using size or another name. I'm not hearing huge enthusiasm for solving this. astearns: Might be worth a note in the spec saying we've considered a shorthand and have not found enough motivation for dealing with the problems and outline what the problems are. astearns: Objections? RESOLVED: Add a note to the spec explaining this problem and move this issue to level 4. Publication ----------- florian: Do we need a new WD? fantasai: Sure. astearns: Objections to a new WD of Sizing with all current resolutions edited in? <tantek> +1 RESOLVED: Publish a new WD of Sizing with all current resolutions edited in. Flexbox ======= Min-content of shrinkable flex items ------------------------------------ github: https://github.com/w3c/csswg-drafts/issues/2353 TabAtkins: We made some edits and we need to WG to approve. Rossen: Can you go over the edits? <fantasai> https://drafts.csswg.org/css-flexbox-1/#change-2017-flex-min-contribution TabAtkins: Last comment in the issue has a link to the change. fremy: I need to process it. astearns: Anyone else want a summary? Rossen: Let's get back tomorrow. I want to look as well b/c I spent time working on this issue. We had a change fixing some edge inconsistencies with this problem. We had to back it out because it seemed others were inconsistant. fantasai: We went with dholbert's solution over fremy's. astearns: There's a 2nd layout section Thursday morning. Let's add this then Table flex items with main size less than preferred intrinsic width ------------------------------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/2442 TabAtkins: If you have a table that's flex item, the flex sizing algo tells it what size to be--but that's can be smaller then the table's min size. What happens? Edge and FF only use table sizing algo. Chrome flexes the table, but I'm not sure if it flexes beyond the minimum size. TabAtkins: fremy says table should flex and overflow to it's min size. I agree. astearns: Anyone disagree that tables flexed to smaller than their minimum size should overflow? fantasai: It should function a min-size constraint. TabAtkins: Does that happen? fantasai: We shouldn't be like the flex item is smaller then it actually is. If the table has a minimum size it should be reflected in the handling of minimum sizes in the algo. TabAtkins: If it has a specified size, content of 200px but width of 10px. It'll be 200px but we don't go down a path to look at the contents. fantasai: The table has a minimum size that's not reflected in min-size property's value. Max of specified min-size and min size from table layout should be the used minimum size. TabAtkins: Yes, that makes sense. dbaron: And only for auto layout tables? fantasai: Yes. Rossen: If width is specified it's still a min-width cbiesinger: Flex considers an explicit width as a min-width? TabAtkins: At all times tables cannot shrink below their min-content size. cbiesinger: Can you put that in the spec somewhere? TabAtkins: Sure. TabAtkins: Between flexbox and table spec we'll put this somewhere. fantasai: Used min-width of a table should consider the content of the table and then we make sure flexbox hooks into that correctly. astearns: We only want flex algo to key off used min-width for tables. fantasai: No reason for it not to in general. We just need to make sure correct terms are in flexbox and that tables has that concept. astearns: Used min-width isn't a term? fantasai: It is, but we need to make sure tables spec uses it. astearns: Used means layout has happened. TabAtkins: This is a flex item. rune: You need min-width before you layout flex item. TabAtkins: Sure. Tables need to do layout earlier. fantasai: Just calc min-content width. astearns: Prop: define what used min width is for tables to include the min-content constraint and make sure the flex algo uses that. astearns: That's the approach we're taking. Let's have you all come up with proposed edits. cbiesinger: Anything else have the used min-width? fantasai: No. Nothing else has a used min-width that depends on random other information. astearns: Anything more on this? RESOLVED: Tables defines used min-size to fold in its min-content size where necessary (for 'table-layout: auto'); Flexbox ensures it is hooked up to this terminology when looking up an item’s minimum size. Flexbox Level 2 =============== fantasai: TabAtkins and I suggested we draft L2 where it's flexbox 1 + the current set of alignment properties with all their values. Flexbox 1 only has a subset of alignment. fantasai: It's L1 + aligning keywords + gap properties so people can talk about it as a thing. TabAtkins: Technically you can read alignment and sizing and figure it out but this would be convenient. fantasai: We'd have to dup some parts of the algo to define gaps properly, but most we can say refer to current Flexbox. We're getting very stable so end of the year I think we can fold in the entire text. astearns: Flexbox level 2 would mostly be a diff spec? TabAtkins: It shouldn't be a diff spec ultimately, just Flexbox 1 with some extra stuff. fantasai: Basically normative references into flexbox and alignment and some normative text on how it combines with maybe some quotes from the algo. Then in the future we'll fold in all the text. astearns: Sounds like it would be best as an ED TabAtkins: Yeah fantasai: Yeah. Once alignment goes to CR we should have a WD. TabAtkins: Sure astearns: Objections to an initial ED of Flexbox L2? RESOLVED: have an initial ED of Flexbox L2 [TTML discussion goes here; extracted out for cross-posting] Overflow ======== overflow: clip -------------- github: https://github.com/w3c/csswg-drafts/issues/1971#issuecomment-377078084 florian: Missed the telecon where we discussed. We recently resolved overflow:clip does not trigger BFC. I think it failed to considered some of the things that implies. florian: The motivation that triggered adding to spec was usage in combo with contain: paint so you can have contain: paint with text-overflow or resize property. These only apply to overflow not visible elements. florian: We don't want to have contain:paint trigger overflow:hidden because UA might use too many resources. florian: If overflow:clip does not create a BFC, are implemenations comfortable saying resize and text-overflow apply to elements that are overflow:clip? TabAtkins: During discussion before we couldn't come up with a reason you'd want overflow without scrolling, this is the reason. There are properties that depend on things being non-visible. florian: Resize. fantasai: I think it doesn't matter for resize. <fantasai> and I think that 'text-overflow' should never have keyed off of 'overflow' florian: I'm not saying should not apply. but if we're going with “it's not a BFC” we also have a bunch of properties that should change to “not visible or clip”. dbaron: There were use cases for the opposite. TabAtkins: This is the use case for this situation. We only came up with use cases for the other resolution. Something that acts like overflow:visible but it's clipped. florian: Not affecting margin collapsing. TabAtkins: Or sticky or scroll-snap. TabAtkins: This is a reason for the opposite where it's like hidden but doesn't scroll. dbaron: They can't apply for text-overflow partly because this is a purely paint time effect. florian: This is also a purely paint time. fantasai: True. dbaron: I guess those two could maybe be changed to not include the visible. Nothing is like this because we've put “overflow does not equal visible” across all our specs where that's not what we mean. fantasai: I think a lot that key off “overflow not visible” key off if it's a BFC. fantasai: I think a lot of things are keying off that. There's many effects that key off of that and we don't have to change those specs. There may be some that don't, though. florian: That we need to rename was mentioned. If we clarify that it doesn't apply to text-overflow and resize that solve my first concern. florian: Are we okay closing that sub topic? astearns: Additional concerns? florian: Assuming we don't find another problem we can clarify the previous resolution to mean text-overflow and resize refer to non-visible elements. fantasai: To rephrase Florian without negatives, text-overflow and resize apply to elements with 'overflow: clip' just as they apply to elements with 'overflow: hidden' florian: The second concern was about what overflow:clip means when applied to the document or body element and propagated to the viewport fantasai: Same way we translate visible to auto, we translate clip to auto. florian: That's good. astearns: Resolve on both? astearns: Prop: text-overflow and resize apply to elements with 'overflow: clip' just as they apply to elements with 'overflow: hidden' RESOLVED: text-overflow and resize apply to elements with 'overflow: clip' just as they apply to elements with 'overflow: hidden' astearns: Prop 2: when overflow:clip is propagated to the viewport it changes to overflow:hidden he same way visible is changed to auto RESOLVED: when overflow:clip is propagated to the viewport it changes to overflow:hidden the same way visible is changed to auto astearns: You're fine with the resolution? florian: Yes. I'm mildly skeptical, but not objecting. logical longhands for overscroll-behavior ----------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/2473 majidvp: There's a resolution to add overscroll inline and block which is reasonable. florian: We don't have a resolution on this. We have it on similar. astearns: Overflow vs Overscroll. Oooh. astearns: Objections to adding block and inline longhands to overscroll-behavior? RESOLVED: add block and inline longhands to overscroll-behavior Let 'overflow' accept two values -------------------------------- github: https://github.com/w3c/csswg-drafts/issues/2484 Oriol: It only lets you set overflow-x and overflow-y. It would be more convenient if it accepted two values. Then there was the question is the order should be physical or logical. As an example background-position is x and y. It will prserve physical order. There's another issue looking to switch longhand and shorthand into physical order. florian: Other is issue #1282 which discussed adding logical keyword to all places currently phsycial. astearns: Separate from that switch, do we let overflow accept 2 values? astearns: Concern about changing this? astearns: Weird mistyped declarations may now have an effect? florian: I suggest we presume that's rare and if it's a problem we raise it florian: A more consistant system where they all have shorthands and they're physical. astearns: Prop: Allow overflow to have two value and for the ordering to be physical. iank: Which order? emilio: x and y. dbaron: Question: There are sets of values transformed into other values. If x is visible and y is scroll we make scroll into auto. Should those combos be syntatically valid for shorthand? myles: Related that this shorthand shouldn't allow new functionality dbaron: Transformation would still happen. I'm thinking a it would be nice if it rejected but it's not possible because serialization problem. Because then values could not serialize to shorthand. emilio: Happens in a lot of places. dbaron: I guess it's not really a serialization problem. Do we want the things that are not going to be valid in the end be parse errors? emilio: I think it would be weird if spec shorthand would yield different results. myles: You set the shorthand and it's rejected and that's different that if you set the 2 longhands. florian: You have a minifier and it takes the 2 longs and puts them to short and that's a parse error. astearns: I would prefer let you set the shorthand to whatever and letting it transform. florian: I don't think we gain by forbidding these. fantasai: If you serialize out computed values it's always valid anyway. florian: What do we gain by forbidding? dbaron: Reject things that don't makes sense. florian: Makes sense when you transform. dbaron: CSS tries to reject things that don't make sense. fantasai: Would be nice if a validation tool flagged this as a warning, regardless. astearns: Computed value shows something changed. fantasai: That always happens. emilio: [missed] fantasai: Tranforming em to pixel doesn't show you've got a problem in your style sheet. astearns: I'm not certain having a transform apply implies there's a problem in your stylesheet. fantasai: rachelandrew? rachelandrew: I don't have an opinion. florian: Stylesheet maintenance it's strange. myles: Have we never encountered this? fantasai: Almost for display but we made all meaningless combos invalid and got rid of the longhands. emilio: Outline style stuff which when you have hidden outline and the line-width becomes 0. astearns: Anyone have a concern with allowing whatever combo we specify? Anyone object to taking what we get and transform? astearns: Prop: Allow 2 values on the overflow property in physical x/y order in any existing values. myles: What a combo authors want with different keywords? astearns: hidden x auto in y. myles: So only one scroller. astearns: People use overflow x and y in various situations and it's just that it would be nice to let them use the shorthand for both. rune: If you have visible overflow in x and y you get visible. florian: Transformed to auto. myles: Hidden and auto are okay. astearns: Objections? RESOLVED: Allow 2 values on the overflow property in physical x/y order for any existing values. astearns: we're done for the day. <RRSAgent> https://www.w3.org/2018/04/10-css-minutes.html
Received on Friday, 27 April 2018 21:29:43 UTC