New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate reference combinators #303

Closed
nex3 opened this Issue Mar 2, 2012 · 3 comments

Comments

Projects
None yet
3 participants
@nex3
Contributor

nex3 commented Mar 2, 2012

These should be on our radar, although we may want to wait until they're implemented somewhere before we support them. See Selectors Level 4.

Here's a page tracking browser support.

Tasks:

  • Deprecate existing behavior in stable.
  • Remove behavior from master.
@jleclanche

This comment has been minimized.

jleclanche commented Mar 16, 2012

I don't think this is here to stay; as the issue says it's a lot easier to implement as a functional pseudoclass. The syntax is really ugly, too.

@sturobson

This comment has been minimized.

sturobson commented May 26, 2013

quickly looking in Chrome (latest and Canary), Firefox (latest and Aurora) and Opera (latest(presto)). There seems to be varied support for level 4 selectors now. I've found this test (wrongly named as CSS4) here -

http://css4-selectors.com/browser-selector-test/

Chrome -

current -

Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)
Mutability pseudo-class (E:read-only)
Mutability pseudo-class (E:read-write)

canary -

Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)
Mutability pseudo-class (E:read-only)
Mutability pseudo-class (E:read-write)

Firefox -

current -

Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)

aurora -

Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)

Opera -

current -

Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)
Mutability pseudo-class (E:read-only)
Mutability pseudo-class (E:read-write)

Total list of level 4 selectors tested -

Negation pseudo-class (E:not(s1, s2))
Matches-any pseudo-class (E:matches(s1, s2))
Local link pseudo-class (E:local-link)
Time-dimensional pseudo-class (E:current)
Indeterminate-value pseudo-class (E:indeterminate)
Default option pseudo-class (E:default)
Validity pseudo-class (E:in-range)
Validity pseudo-class (E:out-of-range)
Optionality pseudo-class (E:required)
Optionality pseudo-class (E:optional)
Mutability pseudo-class (E:read-only)
Mutability pseudo-class (E:read-write)
Structural pseudo-class (E:nth-match(n of selector))
Grid-Structural pseudo-class (E:column(selector))
Grid-Structural pseudo-class (E:nth-column(n))
Grid-Structural pseudo-class (E:nth-last-column(n))
Attribute case-sensitivity (E[foo='bar' i])
Reference combination (E /foo/ F)
Subject of a selector with Child combinator (E! > F)
Hyperlink pseudo-class (E:any-link)
Dir pseudo-class (E:dir(*))

Just thought I'd do a little testing to see what browsers are supporting what and where to keep the issue up to date a little.

(up to date browser == latest download as of time of posting this)

@nex3

This comment has been minimized.

Contributor

nex3 commented Feb 17, 2017

Sass has supported this since afdf0e8, but it's since been removed from the specification so we should deprecate it.

@nex3 nex3 changed the title from Attribute reference combinators to Deprecate reference combinators Feb 17, 2017

nex3 added a commit to sass/sass-spec that referenced this issue Feb 17, 2017

Stop testing the reference combinator.
This combinator has been removed from the CSS spec. Sass implementations
thus no longer need to support it. It should be deprecated and
eventually removed from implementations that support it now.

See sass/sass#303

nex3 added a commit to sass/sass-spec that referenced this issue Feb 23, 2017

Stop testing the reference combinator. (#1082)
This combinator has been removed from the CSS spec. Sass implementations
thus no longer need to support it. It should be deprecated and
eventually removed from implementations that support it now.

See sass/sass#303

nex3 added a commit that referenced this issue Jun 2, 2017

nex3 added a commit that referenced this issue Jun 9, 2017

@nex3 nex3 modified the milestone: 4.0 Jun 15, 2017

nex3 added a commit that referenced this issue Jun 16, 2017

nex3 added a commit that referenced this issue Jun 16, 2017

nex3 added a commit that referenced this issue Jun 16, 2017

@nex3 nex3 closed this Jun 16, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment