- From: Dael Jackson <daelcss@gmail.com>
- Date: Thu, 5 Mar 2020 05:35:21 -0500
- 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. ========================================= F2F --- - Group members should update their Cork F2F travel plans/availability on the wiki so that a determination can be made on if the F2F will proceed as planned or if there's a need to develop a backup plan. Media Queries ------------- - RESOLVED: Add three issues to the ED [Draft needs a security and privacy section. Add an issue for if there should be more than binary values. Add to the draft that this is still under discussion and maybe not ready to ship] (Issue #2370: Adding prefers-reduced-data as part of MQ5 FPWD) CSS Paged Media --------------- - RESOLVED: Name this page-orientation with values rotate-left and rotate-right (Issue #4491: Add orientation descriptor) CSS Values 4 ------------ - RESOLVED: min() and max() get simplified by simple unit values of the same unit we reduce to one instance of each. We also reorder the arguments in the same way that sums reorder. Review math functions for consistency (Issue #4550: Specify simplification of min() and max() more explicitly) CSS Fonts --------- - Originally the group was looking to amend the algorithm for selecting first available font to check for the 0 glyph, if not there check for .notdef glyph, else use 0.5em (Issue #4796: Reconsider the definition of "first available font"). Upon discussion it became clear that using 0.5em was problematic for looking for a font file so discussion will continue in the issue. ===== FULL MINUTES BELOW ====== Agenda: https://lists.w3.org/Archives/Public/www-style/2020Mar/0004.html Present: Adam Argyle Tab Atkins Oriol Brufau Elika Etemad Simon Fraser Chris Harrelson Daniel Holbert Dael Jackson Dean Jackson Sanket Joshi Chris Lilley Peter Linss Cameron McCormack Brian Kardell Devin Rousso Alan Stearns Lea Verou Regrets: Rachel Andrew Amelia Bellamy-Royds Christian Biesinger Mike Bremford Manuel Rego Casasnovas Florian Rivoal Christopher Schmitt Jen Simmons Miriam Suzanne Scribe: dael astearns: We should get started. fantasai noted first item on the agenda which I found with a stray agenda+ had been resolved so we'll skip astearns: Also will skip the 4th because don't have right people astearns: Not sure about 2. Is Adam on? Adam: There were other people with questions. Should they be present? astearns: florian mentioned it for attention but fine without him astearns: Any other agenda changes? astearns: I'd like to add- I asked on private list. If you know if you will/won't make it to Cork please update the wiki astearns: At the moment we have 4 or 5 people that may make it and the rest on the wiki say they cannot make it. Need to know if we should change to tele-presence or cancel. Please update wiki with your plans as you know them now Media Queries 5 =============== Adding prefers-reduced-data as part of MQ5 FPWD ----------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/2370 <fantasai> https://www.w3.org/TR/mediaqueries-5/#prefers-reduced-data Adam: Inspired by JS having similar things. Access to information about users like data saver on your phone where you can say at a high level you want to use less data. Can reduce background activities. In JS we can be aware of this just like we can reduce motion. Adam: If they're in 2G or paying for data or something like that. Proposal is a flag in CSS so we can make adjustments. Proposal JS is granular but CSS just needs on or off. Do they want to reduce or carry on undefined. Adam: Good intro? astearns: Sure fantasai: Good idea to have a MQ for this. Concern there is different levels of less data. One is I'm on a slow connection, another is I'm paying small data and want reduced functionality. I'm wondering if need a couple of levels. Reduce data and another to compromise functionality if needed Adam: Good question. Reminds me of lie-fi which is where it says you have wifi but you don't. Frustrating for user because what do you do. People can use things like service worker for that. CSS I'm not sure if we need more. I like we're mimicking the system binary Adam: Most questionable part of MQ is around how hard is it to use. Examples people put is I have a big BG image and people want to do a color but then browser has already loaded your image. Lot of potential to not work. CSS because how it loads there's potential to not get what you want. Adam: Need to have a say where it goes. Maybe needs to be in head. MQ often bottom of file TabAtkins: I suspect we don't need more levels right now because I don't see it being likely you have much you can do besides if it's not in data saver I load and if it's in mode I load colors. There's not much useful in CSS we can do. I suspect we just need the two. Load or don't load images Adam: Fonts as well. You can load expensive custom fonts. Put behind the MQ and only load if they don't have preference TabAtkins: Yeah. Yeah. Fonts and images. There isn't a middle ground. Either load or not smfr: Apple's main concern is this is more fingerprinting. It's biased fingerprinting toward low income with limited data. We're concerned this could be a targeting vector. smfr: iOS does have a settings switch but adds more fingerprinting where it remembers you flipped this switch on certain wifi. That's a worry. smfr: Would like to see security and privacy section added to the spec smfr: Not objecting but we do have concerns. Discussing if we would implement TabAtkins: Are you implementing the header? smfr: I think answer is no TabAtkins: Okay. You're not doing client hints that's acceptable problem fantasai: MQ aren't just CSS. Can also be accessed in JS and HTML attributes to load files. Not just about CSS but also controls if you load a JS library. fantasai: Also these days not about if it's a BG image people are loading lots of videos for decoration and that's data that's not needed. Can replace that with an image. But if you're even more resource constrained you'd want no image fantasai: If we don't have multiple levels now we should design so that we can expand later. I think there is multiple levels here and it's not just about CSS Adam: Good examples. I like them <dino> I'm not sure if the type of person who would load a huge video as a background image would also provide a fallback that is a solid colour :) <fantasai> dino, I can see AirBnB doing that, frex. They get pulled down over roaming connections a lot. astearns: Hearing we need security and privacy section. Second is we should have separate issue about needing more then a binary state astearns: One bit of background. This is on agenda because intent to prototype in Chrome smfr: Would have liked to see discussion in WG before PR merged <fantasai> +1 to smfr, adding features should get WG resolution astearns: I think there was some but I agree there could have been more. astearns: Looking through issue and not seeing discussion before merge, just comments on the issue fantasai: Remove it from draft or add annotation on issues or don't leave indication that there's an issue in the draft? TabAtkins: I don't think we should remove given client hints serves the same data. Exposing to CSS is user friendliness. Precise design open issues on that. So long as client hints is going through I think we should have this in MQ as well fantasai: We should annotate the issues a bit in the draft TabAtkins: Yeah smfr: Are client hints more than one impl? The comparison isn't valid if blink is only browser that impl client hints astearns: Anyone know the status in gecko? heycam: I don't believe we impl that astearns: Three issues. Security and privacy section. Add issue for more than binary. Add this is still under discussion and maybe not ready to ship astearns: Accurate? Adam: Yes to me chris: Question. Agenda item talks about if this should be in FPWD. That was published yesterday so whatever we decide will impact the ED. I think it was published with this included. I just took the ED and went forward astearns: Yes, that's what you should have done. We can take it out if need be astearns: Enough for now? Add the three issues to the draft and add them as separate GH issues astearns: Proposal: Add three issues to ED RESOLVED: Add three issues to the ED <TabAtkins> Even in the "video vs img vs color" scenario, I don't think there's a particularly useful line to draw there. Basically, I don't think there's a particularly useful "I have plenty of data, but I'm not the *sultan*" line to use, at least in CSS. JS can do more complicated stuff, but I think in such a scenario you should downgrade all the way to a gradient or a very small image, if people are requesting reduced data at all. CSS Paged Media =============== Add orientation descriptor -------------------------- github: https://github.com/w3c/csswg-drafts/issues/4491 chrishtr: Discussed in Dec. Can add to a named page to control rotation in printed output. chrishtr: Use cases are to provide orientation for dominant content direction when multi direction. Second it allow dev to provide mixed rotations for UA that don't support other page rotation parts chrishtr: I think some consensus use cases make sense. chrishtr: Discussion on name chrishtr: Check for consensus and then do name. <bkardell_> https://docs.google.com/document/d/1plEqcBz_6ApmtWYCSRxwOANgF5aGoAL2B0s_9PSQJF0/edit#heading=h.zd7icrtuskjo <fantasai> https://github.com/w3c/csswg-drafts/issues/4491#issuecomment-590613842 fantasai: Not clear on the behavior of this. I read TabAtkins comment that makes sense but you said it's not that TabAtkins: What happens is in cases where printed output but you control how pages are displayed, aka pdf, adjusts how they're oriented in that display. TabAtkins: You can have a whole bunch of portrait and then some are landscape fantasai: Example in comment. Doc with a table, assign table to landscape with features we have. Printer the landscape is oriented to portrait. When open a PDF you get a bunch of portrait pages and a landscape for the page that has a table which is upright for me on the screen. That's without this property. Current behavior fantasai: Proposal is to rotate the landscape so it's sideways and you have to turn your head to read? TabAtkins: It's something else fantasai: What is the default that should happen right now? TabAtkins: Ideally you do what you described. Wide table you force to a named page and say landscape TabAtkins: In scenario today where browsers do not have ability to do different size pages in layout what you instead do is layout everything as portrait. If that means putting out bitmaps or whatever it all comes out as portrait. TabAtkins: This feature then says if you're output to a pdf go ahead and rotate. This is a the good feature isn't impl so let's put in this feature for now. It'll be a few years before browser can address properly fantasai: Okay, I think I understand. So this rotates whole paper including headers TabAtkins: Correct. TabAtkins: When browser can control paper orientation is this property fantasai: Use case you're bringing up is you pre-rotate using writing-mode or transform or something and then rotate back to get effect of if we had portrait/landscape TabAtkins: Correct bkardell: I shared a google doc from gsuites that talked about uses involving mixed orientations. Is that included here? chrishtr: mixed means some landscape and some portrait. So your original comment is correct, and the additional use case from TabAtkins is a browser that doesn't fully support to still be able to output. bkardell: I see that in issue. Thanks astearns: Currently for output formats that can handle layout orientation. When browser can layout as a landscape page would this property start applying to on screen? fantasai: No TabAtkins: Not unless display in paged format which generally don't chrishtr: If site applies page:landscape and rotate:left you get things that look sideways. Shouldn't do that. Should only apply rotate for layout of printed mode astearns: I'm thinking of paged view on tablet. Currently...if you had this you could layout such that someone can rotate screen and get better view of horz content chrishtr: Cases where drawn by dev layout but paginated layout? astearns: Future browser with paginated ux TabAtkins: Got it. Depends on if it allows rotation of pages. If wants to be more like printed it would not respect. But if it's just layout onto desktop screen it would respect this property and rotate the page for you chrishtr: If you consider pdf viewer on tablet you can imagine browser to integrate with pdf viewer to not respect this and expect you to rotate. It's an option impl could choose fantasai: It's a good point astearns and we should write up that situation astearns: I've got people with defined opinions on pdf viewers we can consult TabAtkins: Want to make sure it's clear in description where this applies. Paginated viewing and makes sense to author orientation of page based on user preference not device orientation. Happy to work together to make sure text looks good astearns: Other questions or opinions on basic design before we do naming? astearns: Let's talk names astearns: My opinion is page-rotate makes sense since talking pagination chrishtr: Makes sense to me astearns: Other opinions? astearns: We're not setting anything in stone. I think for now go with page-rotate and with issue discussion fantasai: page-rotate or page-orient. rotate-left and -right makes sense TabAtkins: I like rotate because it's spinning. I would accept orientation fantasai: I think that was my opinion until astearns' examples where this is a hint about correct orientation but you might not honor that. It's hint about orientation but not a command to rotate. I'm not super clear astearns: In order to prevent a verb should it be page-rotation? astearns: Seems like we're at a lull. Should we resolve on name page-rotation? fantasai: Have rotate property TabAtkins: But it's a rotate function. There's a reason for it to be a verb when we normally have adjectives fantasai: I feel inconsistency is not great dholbert: Rotate sounds like an angle rather then keyword TabAtkins: Breaking with rotate is good TabAtkins: Page-orientation chris: People talk about page orientation chris: page-orientation rotate-left and rotate-right? astearns: Makes sense. Rotate seems angle astearns: page-orientation with values rotate-left and rotate-right dholbert: Don't love rotate-left because sounds like clockwise and counter clockwise. Left is direction rather then rotation. It's translation chrishtr: left is 90deg rather then rotate dholbert: Suggests counterclockwise astearns: And easier to spell astearns: Other concerns? astearns: Objections? RESOLVED: Name this page-orientation with values rotate-left and rotate-right astearns: Anything else you wanted on this chrishtr? chrishtr: That's it, thank you CSS Values 4 ============ Specify simplification of min() and max() more explicitly --------------------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/4550 TabAtkins: Important question is with a min and max function the spec declares we simplify argument as much as possible and when can fully resolve we replace function with results TabAtkins: emilio and smfr wanted to partly simplify. Example min(10px,20px,1em) we simplify eagerly to eliminate 20px because there's no way that can be a result. 1em is unclear but when arguments are same unit you can simplify eagerly TabAtkins: Do we want to do that is the question TabAtkins: In general I've held only simplify if can be fully gotten rid of. But I do simplify sums so amenable to this level of simplification. Not further. If no objections I'm happy to go ahead and do what emilio wants and allow same unit simple values to be removed from min or max when clearly superfluous. TabAtkins: If no objections I'll do that bit and no more <emilio> TabAtkins: If we do that we also probably want to define _some_ ordering for those factors (probably the same as for products and sums) <emilio> Because to simplify fast you want to sort first heycam: For em units it's reasonable to assume non-negative. Case for percent? TabAtkins: Depending on property % can be positive or negative or positive only. Can't tell before resolved so need to leave. Don't want to distinguish cases about when % is against non-negative because seems more complex then needed here. Would rather % stay always because there are cases where they can be resolved negative heycam: Agree. Technically with 3 % you can get rid of one TabAtkins: Yeah but don't want to go to that level astearns: emilio commented on IRC TabAtkins: He argues we should order factors. Sums serialize in an order. emilio argues to do same for min and max where we eagerly sort arguments. TabAtkins: That's fine, we can do that TabAtkins: Makes sense since min and max are equivalent to sum and product. If we're doing some simplification I'm fine with that case astearns: Other comments? smfr: Fine with this. Wanted similarity. Want to look at other math functions coming up to see if need consistency TabAtkins: Other then hypot I don't think anything else. I don't think I want to inter-argument simplify hypot. Step too far. TabAtkins: If we have more functions that are commutative binary we should do same thing. Nothing outside min and max fit the bill so far <oriol> I'm having sound problems. I think this may add more confusion than anything <oriol> And not much consistent to do it for min/max but not for hypot astearns: oriol has sound problems but sounds like agrees to do it as hypot. Think it may cause more confusion TabAtkins: Lots of simplification is arbitrary line of where we do it. Saying it's exactly like plus is a fine boundary. Happy to do it with min and max and make that the boundary. If it's essentially plus you simplify. If not you only do it when you can simplify the entire thing away <oriol> I think functions are different than sums because sums are an operator <oriol> So that argument doesn't convince me <oriol> It's even implicit in the notation, + is the usual notation for a commutative group structure in mathematics. It's less clear in min() or max() astearns: oriol would you object to the simplifications? <TabAtkins> min/max are associate+commutative in the same way that + and * are <TabAtkins> nothing else (including hypot) is <oriol> I don't object, but I think this may just add more confusion for authors, so I would prefer to treat functions as black boxes until we have resolved all arguments and can actually call them astearns: TabAtkins can you summarize? TabAtkins: Proposal: min and max get simplified by simple unit values of the same unit we reduce to one instance of each. We also reorder the arguments in the same way that sums reorder dholbert: Question on that. Is it possible for % to resolve to a negative? TabAtkins: Yeah. dholbert: So min of two percent values isn't resolvable TabAtkins: Yeah, we exclude % from that astearns: Also we will look through math functions and make things consistent astearns: oriol doesn't object, just doesn't think it's useful. astearns: Objections? RESOLVED: min and max get simplified by simple unit values of the same unit we reduce to one instance of each. We also reorder the arguments in the same way that sums reorder. Review math functions for consistency astearns: oriol please continue discussing in the issue CSS Fonts ========= Reconsider the definition of "first available font" --------------------------------------------------- github: https://github.com/w3c/csswg-drafts/issues/4796 chris: Not all fonts have glyph for space which means not first available font chris: Proposal is a three way thing where third item is width of .notdef glyph which all fonts are required to have astearns: I see that's 2nd on list chris: Yes, sorry astearns: If .notdef is guarantee? TabAtkins: Required and there are different. I'm happy with this astearns: Is it what browsers implement? chris: We believe so chris: There's a WPT that's wrong right now but it would become correct with this change. I suspect that means browsers do what this is proposed astearns: Proposal: Amend our algorithm for selecting first available font to check for the 0 glyph, if not there check for .notdef glyph, else use 0.5em astearns: Objections? RESOLVED: Amend our algorithm for selecting first available font to check for the 0 glyph, if not there check for .notdef glyph, else use 0.5em chris: My proposal is in the issue comments fantasai: I think it's different then original proposal so wondering if he was okay. I've got your proposal and one from Jonathan chris: Right, his includes unicode range so if the unicode range excludes space. Not about if font excludes space then it counts as not having one. astearns: And if you use unicode range you exclude .notdef so it falls to 0.5em chris: .notdef isn't exclude-able with unicode range fantasai: Resolution defines ch unit but first available font is a lot more general. I'm a little confused. 4796 from what I understand is about the new definition of first available font checking whether the font has a space glyph. jfkthame proposed not checking if there's a space but if unicode range on font would cover space character. Then you proposed to check for zero instead of space... chris: Not quite. If it doesn't have a 0 then you can use notdef glyph rather then say we fail. That's compat with webkit fantasai: So to find first available font I check for a space, then for a 0, then notdef glyph, then use 0.5em? 0.5em is not a font. chris: Right. I see what you're saying. astearns: Talking about how to determine a measure from a first available font without a space or a 0 or notdef fantasai: ch has a definition of use 0 or 0.5em. If you're looking for x there's other metrics. Here we're looking for what font file. astearns: We're over-time. We should undo previous resolution and bring up later RESOLVED: Remove previous resolution, discussion continues on github astearns: Thanks everyone. Please update Cork wiki with travel plans. We'll talk next week
Received on Thursday, 5 March 2020 10:36:22 UTC