- From: CSS Meeting Bot via GitHub <sysbot+gh@w3.org>
- Date: Wed, 04 Jul 2018 07:04:04 +0000
- To: public-css-archive@w3.org
The Working Group just discussed `Bikeshed the 0 specificity alternative to :matches()`. <details><summary>The full IRC log of that discussion</summary> <florian> Topic: Bikeshed the 0 specificity alternative to :matches()<br> <leaverou> Table: https://github.com/w3c/csswg-drafts/issues/2143#issuecomment-360586470<br> <dbaron> github: https://github.com/w3c/csswg-drafts/issues/2143#issuecomment-360586470<br> <florian> ericwilligers: [projets the issue]<br> <florian> fantasai: if we have :not and :is, they should have the same specificity<br> <florian> ericwilligers: matches has changed specificity recently<br> <florian> fantasai: that's out of scope here<br> <florian> ericwilligers: :when was time based, so I proposed :where, haven't heard back<br> <florian> astearns: does anyone have problem with :where ?<br> <florian> leaverou: has does that avoid the problems that :is has?<br> <florian> fantasai: because :is and :not need to be opposite<br> <florian> leaverou: how about having :is-not be the opposite of :is<br> <florian> all: Noooo<br> <florian> frremy: :where works for me<br> <florian> ericwilligers: has to combine well with :not()<br> <florian> leaverou: why can't we change :matches? it has shipped, but nobody uses it yet<br> <florian> astearns: we've discussed doing it several time, and failed to reach consensus<br> <florian> fantasai: lea propose to just change the specificity of :matches, and add a new one for the other specificity<br> <florian> frremy: why use the :match name at all, it's a bad name<br> <florian> leaverou: we're stuck with it anyway<br> <florian> fantasai: I want a short list so that we can think about it<br> <florian> leaverou: would you object to :is if it did what matches currently does, and :match() is the 0 specificity one?<br> <florian> fantasai: no, I would not<br> <florian> leaverou: what if we just have one, with an argument for specificity<br> <florian> fantasai: too confusing<br> <florian> shane: :where makes sense for people who have used SQL, but for others it is confusing, and seems to involve position<br> <dbaron> Whiteboard:<br> <florian> leaverou: I find SQL readable, but that's because it's a full sentence, which isn't the case in css<br> <florian> fantasai: I like 2 and 4<br> <Rossen> Here are the options<br> <dbaron> 1. :is()<br> <dbaron> 2. :matches() + replace existing :matches() with :is()<br> <Rossen> 1. :is()<br> <Rossen> 3. :if()<br> <Rossen> 4. :also()<br> <Rossen> 5. :where()<br> <florian> frremy: :and means nothing to me, all selectors already imply that<br> <Rossen> 6. :selects()<br> <florian> fantasai: yes, but :also doesn't have that implication<br> <florian> leaverou: in favor of :also<br> <florian> Rossen: [makes funny inaudible jokes]<br> <florian> dbaron: we have an html element called select<br> <florian> Rossen: let's start removing<br> <florian> Rossen: kill select<br> <florian> ericwilligers: I think we can also kill :if<br> <florian> Rossen: :if would need an :else<br> <florian> frremy: why?<br> <Rossen> 7. :also() + replace existing :matches() with :is()<br> <florian> leaverou: I'd like 7<br> <florian> frremy: this was called that way because the DOM API is called that<br> <florian> fantasai: actually, it's very old and it's the other way around<br> <florian> ericwilligers: it has been in webkit for a long time<br> <florian> astearns: how much web content uses :matches?<br> <florian> iank_: not a lot, looking at usecounter<br> <florian> ericwilligers: usecounter may be wrong<br> <dbaron> "the other way around" was in reference to original name being :any or :matches.<br> <florian> Rossen: is either 2 or 7 an option? they involve changing :matches. webkit people, can we do that?<br> <florian> myles: we could<br> <florian> myles: we would be moderately interested in updating, but it's low priority<br> <florian> dino: why ?<br> <florian> fantasai: because a best named proposal otherwise is :is, but it is bad if it's specificity doesn't match :not<br> <florian> fantasai: so we could change :matches to be the 0 specificity one, freeing the room for :is to do what :matches does now<br> <florian> leaverou: maybe we can resolve on that in parts<br> <florian> fantasai: removing option 1<br> <dbaron> I implemented :-moz-any() in Gecko in 2010 in https://bugzilla.mozilla.org/show_bug.cgi?id=544834<br> <florian> fantasai: the web compat impact of 2 and 7 are different<br> <florian> ericwilligers: does anyone want 2?<br> <florian> fantasai: removing 2<br> <florian> [lots of people]: I don't like also.<br> <florian> [lots of people]: [lots of jokes]<br> <florian> leaverou: what's wrong with :also ?<br> <Rossen> :soso()<br> <florian> dbaron: :also comes after something, but it doesn't come after anything particular<br> <florian> Rossen: agreed (with a pun)<br> <florian> ericwilligers: :where implies position OR situation<br> <florian> fantasai: does :where not have the same problem as :also?<br> <florian> fantasai: :matches does not have that problem<br> <florian> frremy: I prefer :where and :if, and :if makes a lot of sense when you read it<br> <dbaron> The thing I was talking about was called a "simple selector" in CSS 2, a "sequence of simple selectors" in selectors-3, and a "compound selector" in selectors-4.<br> <florian> astearns: :if clashes with JS?<br> <florian> [lots of people]: it doesn't<br> <florian> ...: :if calls for :else<br> <florian> ...: it doesn't<br> <florian> philipwalton: ??????<br> <florian> heycam: one option was to have a specificity parameter in :matches<br> <florian> astearns: we have agreed that renaming :matches is not necessary to solve this<br> <dbaron> s/??????/was the reason for doing this that the specificity was bad, or to give control over specificity? [answer: latter] It seems like a pseudo-class isn't the right tool for that, but I guess that's the right tool for the job./<br> <florian> astearns: we rejected some of the options, we should make a smaller list of plausible<br> <florian> fantasai: we should make a strawpoll, and then call for objections on the most popular<br> <florian> fantasai: :if gets 7 votes<br> <florian> fantasai: :also gets 1.5votes<br> <florian> fantasai: :where gets 7 votes<br> <florian> astearns: objections to :if ?<br> <florian> astearns: objections to :where ?<br> <florian> leaverou, fantasai, iank_: strong reservations<br> <tantek> let's strawpoll if vs where!<br> <florian> astearns: I am not declaring consensus<br> <florian> astearns: we will ask outsiders about :if vs :where<br> </details> -- GitHub Notification of comment by css-meeting-bot Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/2143#issuecomment-402383758 using your GitHub account
Received on Wednesday, 4 July 2018 07:04:12 UTC