22:57:19 RRSAgent has joined #css 22:57:23 logging to https://www.w3.org/2024/09/04-css-irc 22:57:23 RRSAgent, make logs Public 22:57:24 Meeting: Cascading Style Sheets (CSS) Working Group Teleconference 23:00:43 masonf has joined #css 23:00:58 flackr has joined #css 23:01:17 kbabbitt has joined #css 23:02:13 schenney has joined #css 23:02:17 present+ 23:02:20 dholbert has joined #css 23:02:41 present+ 23:02:59 andreubotella has joined #css 23:03:19 ethanjv has joined #css 23:03:45 present+ 23:03:53 present+ 23:04:03 present+ 23:04:19 present+ 23:05:22 present+ 23:05:59 alisonmaher has joined #css 23:06:02 present+ 23:06:23 present+ 23:06:24 github-bot, take up https://github.com/w3c/csswg-drafts/issues/6900 23:06:24 Topic: Republishing Tasks Permathread 23:06:24 OK, I'll post this discussion to https://github.com/w3c/csswg-drafts/issues/6900. 23:06:58 astearns: Tab asked for a new WD for anchor positioning. If all of the edits have resolutions, we don't need a resolution for publishing a new version, but we might as well 23:07:36 TabAtkins: Not 100% sure everything has a resoltuion. I might have made small edits that didn't have a proper resolution. We also have a lot of renamings that need to be reflected on the WD 23:08:12 fantasai: Will review the changelog before publishing 23:08:25 +1 23:08:42 REOSOLVED: new WD for anchor positioning 23:08:55 RESOLVED: new WD for anchor positioning 23:09:14 github-bot, take up https://github.com/w3c/csswg-drafts/issues/5335 23:09:14 Topic: [css-inline-3] text-box-trim vs fragmentation 23:09:14 OK, I'll post this discussion to https://github.com/w3c/csswg-drafts/issues/5335. 23:10:55 q+ 23:10:55 fantasai: I was chatting with Jen Simmons about how text-box-trim interacts with fragmentation. We have a discussion about setting text-box-trim in a box in the flow that gets fragment, but not on the multicol element. There's a lot of column boxes inside it, should it apply to any of them? 23:11:09 Probably makes sense to apply to the first and last line box in each column 23:11:21 assuming there's no intervening padding or borders 23:11:25 +1 23:11:28 +1 23:11:29 frivoal: makes sense to me 23:12:10 astearns: I know of a use case where we'd want to trim all of the top and bottom (?) of a column except for the very first and last. But we can handle that with the :column element 23:12:33 frivoal: I'm aware of that for trimming margins, but this issue is about trimming the top and bottom of lines. Is that correct as well? 23:13:04 astearns: You might be right that it might apply only to margins. There might also be a usefulness for lines. But yes, it should apply only to the top and bottom if it applies to multicolumn 23:13:26 bfgeek: My concern is that if applied to the end, it might shorten the column box, which might change the fragmentation point 23:13:46 fantasai: When fragmenting, you'd have to be aware of whether the line box to add to a page is trimmed or not 23:13:47 ack astearns 23:13:59 bfgeek: It's more complex, because of interactions with collapsing margins at the end 23:14:21 I dont' know if this is implementable for end trimming 23:14:40 frivoal: In this issue we're talking about trimming leading in lines, does that also affect? 23:15:24 q+ 23:16:19 astearns: We might need some make-forward-progress algorithm where you decide where the fragmentation break is, then apply the trimming, and not reconsider the break 23:17:04 fantasai: It's similar to when trying to see if something fits, you truncate the margins. If there are borders or padding, you already cannot trim. It's different between line boxes and at the end of the element, so when you evaluate whether you fit, you trim the line box 23:17:26 if additional content fits, then you move forwards 23:17:47 frivoal: it's clear it's desirable, but not clear how doable. Can we edit it later if it's too hard? 23:18:19 fantasai: I think that's reasonable. Because margins are invisible, it doesn't matter whether you consider the box trim or not. It's only when placing the content and checking wherther it fits before the end of the page is when you need to consider trimming 23:18:31 bfgeek: What is the behavior with empty elements that are after this? 23:18:57 masonf has joined #css 23:19:00 If there's a subsequent empty element. That's not considered (?) if there's an empty element afterwards 23:19:13 That's complex because we don't want to arbitrarily look forwards to see if this is the last 23:20:15 fantasai: If the bottom edge of my box is 1em from the bottom of the page, but it has a bottom-margin of 2em 23:20:26 we truncate the margin to the extent necessary to make it fit 23:21:30 ack dholbert 23:22:02 dholbert: when fantasai was talking about how it works in practice, discounting the text-box-trim for the purposes of seeing if the element fits, should it also make the element draw a smaller border box if it happens to fit when this is taken into account? 23:22:12 should the border box extend to the bottom of the column? 23:22:32 s/border box/background/ 23:22:49 fantasai: do you mean a block background or an inline background? 23:23:06 dholbert: if the line of text has a background, i'm thinking of a span that has a background 23:23:35 ... 23:23:51 fantasai: as an author, you don't want to combine text-box-trim with a block background 23:24:07 in the long term, we might want to have a control for this, similar to margin-trim for margins, but this would be the default 23:24:16 s/margin-trim/margin-break/ 23:24:31 astearns: should we specify the behavior as florian suggested, and reopen the issue if there are implementability concerns? or do we take it back to the issue for now? 23:24:52 fantasai: I think this is what people would want if they set text-box-trim on multicolumn. The alternative is it doesn't apply at all 23:25:05 frivoal: If it applies only to the first column, it's worse because you have unbalanced columns 23:25:32 astearns: any objections, dholbert and bfgeek? 23:26:28 bfgeek; there's some complexity because, the way it works we'd need to backtrack. For example, you place a line box, there's 10px of space remaining. You need to lay out the next line box, because it might only be 8px 23:26:46 But if it's 12px high, you need to backtrack and go to the previous line box, and then trim it, which is a bit scary 23:26:54 you don't know if it's the last line box until you lay out the next line 23:27:37 frivoal: Having it only apply to the first column and not the others will be ugly. In general, for the problem, if we only trim at the first column it's bad 23:27:54 same for printing and pagination, if you have a multi-page document, you want the top and bottom to match 23:28:44 bfgeek: At the minimum we'd want trim-top. I'll talk to Morten to see how feasible is trimming the bottom if we have to backtrack 23:29:24 fantasai: Once you've decided that the line box fits, you can forget about whether you trimmed it. It only matters if you drew a background, and if you do, you have the question of where it ends 23:29:34 You have to make sure the background doesn't go beyond the fragmentainer edge 23:29:44 bfgeek: It affects more things than that 23:30:22 astearns: We should table the discussion of how it should work for now. bfgeek, are you okay having the conversation with Morten before resolving? 23:30:27 bfgeek: yeah 23:30:46 frivoal: Can we resolve to do it on the start side and leave the end side open? 23:30:54 astearns: We'll discuss that next time 23:30:57 fwiw the "in what ways is the column-end-trimming observable [and how do we need to tidy up after ourselves after placing that line]"is the bit that I'm wondering about too 23:31:04 github-bot, take up 10761 23:31:04 andreubotella, I can't comment on that because it doesn't look like a github issue to me. 23:31:18 github-bot, take up https://github.com/w3c/csswg-drafts/issues/10761 23:31:18 Topic: [css-box-4] Applying `margin-trim` to fragmentation containers 23:31:18 OK, I'll post this discussion to https://github.com/w3c/csswg-drafts/issues/10761. 23:31:43 dholbert: it's observable wrt what fits in the column, and if the multicol box itself is auto-height 23:32:45 q+ 23:32:49 fantasai: Jen and I think it makes sense if an author applies margin-trim to a multicolumn container, that it should apply to both the top and bottom 23:32:59 of the column box 23:33:40 bfgeek: For grid and flex I don't think it's a problem. For block layout, we have the same problem as before: start is fine, end is even more complex than text-box-trim 23:33:53 When you're processing an element, you fundamentally don't know the end margin of it 23:34:22 andreubotella: for line-clamp: auto I'm keeping track of the bottom margins in order to subtract relevant sizes when computing block size 23:34:34 andreubotella: that's currently implemented in Blink, but only when you have line-clamp 23:34:38 andreubotella: idk if it could be useful for this 23:34:47 ack florian 23:35:12 florian: in terms of use cases, this is important to consider, because trimming the margins at the start of all columns is something authors may want 23:35:26 https://www.w3.org/TR/css-break-4/#break-margins 23:36:31 ... this exists in AntennaHouse, which means there's demand for it 23:36:57 fantasai: we have that spec'd on the ... property. If it says keep, you keep it regardless of margin-trim 23:37:33 s/.../margin-break/ 23:38:24 bfgeek: I'm oscillating between "it's actually easier" and "it's harder". I'd like to talk to Morten about it 23:38:41 we could resolve that it only applies to block layout 23:38:51 that might be something to make forward progress 23:39:28 PROPOSED: margin-trim only applies to a multicolumn container by trimming block-level margins at the top and bottom of each column box 23:39:43 florian: Is this only multicolumn? Pages printed side-by-side have the same demands 23:39:50 fantasai: What are you setting it on then? 23:39:54 florian: The root? 23:40:14 fantasai: They're both kind of similar, I'd like to resolve on this one sooner than later 23:40:26 bfgeek: I'll meet with Morten next week and chat with him abotu this 23:40:40 astearns: If we have not come back to this by TPAC, I'll make sure it's on the agenda then 23:41:01 github-bot, please take up https://github.com/w3c/csswg-drafts/issues/10321 23:41:01 andreubotella, Sorry, I don't understand that command. Try 'help'. 23:41:02 ive got to drop now soryr. 23:41:11 github-bot, take up https://github.com/w3c/csswg-drafts/issues/10321 23:41:11 Topic: [css-anchor-position] `position-anchor` should be defined as a longhand of `position` 23:41:11 OK, I'll post this discussion to https://github.com/w3c/csswg-drafts/issues/10321. 23:41:41 TabAtkins: A while back, we resolved to make position a shorthand for position-type (setting the absolute, fixed... keywords) and position-anchor 23:41:53 We've experimented since then, and the Chrome team would like to reverse this resolution 23:42:19 Compat reason: we'd thought there would be a stronger compat reason to not shorthand position or other properties, but upon further review, while there's still risk, it's not that bad 23:42:26 so we should consider shorthanding these older property 23:42:36 we don't want to do it without a good reason because it's risky though 23:42:44 https://github.com/w3c/csswg-drafts/issues/10321#issuecomment-2136102979 23:42:56 Also, after some thought, we don't agree with shorthand position being part of the position shorthand 23:43:27 while we have a pretty strong tradition of prefix name shorthands being shorthands for properties with the same prefix, but it's not as strong as thought 23:43:32 there's a list in that thread 23:43:52 THe argument from langauge design is weaker than we thought, and that strengthens the argument for not making it 23:44:09 to make a reasonable shorthand out of this, you need more complex grammar, which makes it harder to use 23:44:09 q+ 23:44:23 this is in the category of properties that are adjacent to other properties but shouldn't be reset together 23:44:30 ack fantasai 23:44:42 shouldn't reset, especially if you're switching from static to fixed 23:45:00 so we object to making position a shorthand right now, and in particular with making position anchor a part of that shorthand 23:45:34 astearns: is the complexity of the shorthand across all the value spaces, or does it only get complex when trying to set anchor positioning values? 23:45:52 TabAtkins: both. The first, because anchor positioning only appliies to static or fixed, ... 23:46:11 fantasai: That's not true, if you set to sticky it would ignore all of the anchor positioning stuff 23:46:36 TabAtkins: I think none is one of the few obvious counterexamples, but more complex distinctions we don't do too often 23:46:37 ack astearns 23:47:03 the second bit of complexity: ... and ... are custom idents, so we'd need to make them distinguishable 23:47:22 like, `position: absolute --foo / --bar` 23:47:22 explicitly setting position: absolute, maybe with container in there, and then ... gives a more readable CSS in our opinion 23:48:08 fantasai: We are interested in trying to adress Chrome's concerns. We're happy with the spec as it is now until those concerns are solved, but not happy with reverting before 23:49:02 florian: I agree with TabAtkins about the language not being consistent with the prefix not always being the shorthand. About position resetting all of the longhands, how important is it? 23:49:17 fantasai: it depends on whether we want a shorthand that sets it together 23:49:28 we'd have to design that and put it out to the whole working group 23:49:50 florian: Even if the shorthand doesn't set it together, for the things that are set by position, would you have interference from the other things set by it? 23:50:03 If we're reverting and leaving the issue open for now, I'm good with it 23:50:22 TabAtkins: ... and inset-area being set together ... 23:50:29 fantasai: That's a problem with the UA stylesheet 23:50:38 s/inset-area/insets and position-area/ 23:50:49 RESOLVED: undo the previous resolution and not add position-anchor and position-type to the position shorthand for now 23:50:51 s/from the other things set by it/from the other things set by it if they don't get reset 23:51:07 scribenick: fantasai 23:51:14 github-bot, take up https://github.com/w3c/csswg-drafts/issues/10448 23:51:14 Topic: [css-overflow-4] display: -webkit-box and line-clamp without -webkit-box-orient: vertical 23:51:14 OK, I'll post this discussion to https://github.com/w3c/csswg-drafts/issues/10448. 23:51:42 andreubotella: We had agreed to a compat workaround for line-clamp 23:51:54 andreubotella: if you have -webkit-box and -webkit-box-orient: vertical 23:52:08 andreubotella: then either line-clamp or -webkit-line-clamp would make it not a flex, and make it a block 23:52:14 andreubotella: and -webkit-line-clamp would apply 23:52:23 andreubotella: issue is if you have line-clamp on block containers 23:52:48 andreubotella: should display: -webkit-box + line-clamp without box-orient, should it also trigger the behavior of making it a block container? 23:53:16 andreubotella: I agree with Florian that -webkit-line-clamp only applies with -webkit-box and -webkit-box-orient:vertical 23:53:27 andreubotella: but if you have [missed] 23:53:31 q+ 23:53:52 ack florian 23:53:53 andreubotella: if you have -webkit-box and line-clamp, is -box-orient also required? 23:54:01 florian: This problem is more difficult to dscribe than to solve 23:54:12 florian: we have a weird compat hack that is required when you have -webkit-line-clamp 23:54:19 florian: and is allowed for line-clamp 23:54:25 florian: I don't think we need to generlaize 23:54:35 florian: we need to support the set for -webkit-line-clamp to work 23:54:53 florian: it needs to not work when the whole set is not there, because the Web depends o nit not triggering if any piece is missing 23:55:00 florian: if you don't have the full thing, then don't blockify the flexbox 23:55:09 florian: the non-hacky version doesn't apply to flexboxes 23:55:19 florian: not helpful, and not needed for compat, so keep it simple 23:55:36 florian: already resolved that the new line-clamp works if you have the full set of weird stuff 23:55:49 florian: but if you only have one of them, then we don't trigger the magic condition, and shouldn't 23:55:57 florian: so proposal is no change, just clarify with a note 23:56:33 astearns: proposed no change to spec, add a note mentioning the new version doesn't interact with only part of the old hack 23:56:52 RESOLVED: no change to spec, add a note 23:57:01 Topic: [css-easing-2] Linear easing function requires at least two points? 23:57:46 TabAtkins: reviewing the easing spec, I realized the algorithm for parsing the list of points in linear() didn't match up with how we do lists of points elsewhere, e.g. radial-gradient() 23:57:52 TabAtkins: where we allow single points 23:57:55 TabAtkins: or one value with two positions 23:58:10 TabAtkins: I'm hoping for resolution that we change the linear() parsing to be similar to gradient parsing 23:58:16 TabAtkins: allow a single value, whether 2 positoins or 1 position 23:58:21 TabAtkins: and do the obvious thing with that 23:58:54 the "obvious" behavior is that it's a flat line at the given value 23:58:59 astearns: proposed to allow linear() easing function to have a single stop 23:59:18 RESOLVED: Allow linear() to have a single stop 23:59:39 Topic: Administrative 23:59:50 astearns: OpenUI meeting tomorrow. Come talk about form controls! 00:00:28 https://www.w3.org/events/meetings/178efb2e-e0a7-4b6c-9b39-ef2dba1a3457/ 04:13:29 Linux_Kerio has joined #css 04:30:33 Zakim has left #css