Code Monkey home page Code Monkey logo

Comments (13)

ybiquitous avatar ybiquitous commented on July 17, 2024 2

Make sense. Let's move this into the standard config repo and continue discussing.

Ref:

'value-keyword-case': 'lower',

from stylelint-config-standard.

rohm1 avatar rohm1 commented on July 17, 2024 1

The link you provided is CSS Color Module Level 4 (https://www.w3.org/TR/css-color-4/#currentcolor-color), keyword is only mentioned in lowercase.
In CSS Color Module Level 3 (https://www.w3.org/TR/css-color-3/#currentcolor) keyword is written in camel case, and references SVG 1.0 specifications which also use camel case.
Finaly, SVG2 draft also mentions the keyword in camel case: https://svgwg.org/svg2-draft/painting.html#ColorProperty.

To summarize:

  • CSS3, SVG1 and SVG2: currentColor
  • CSS4: currentcolor

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

@rohm1 Thanks for the report. But I believe this is not a bug. You can avoid the error by the camelCaseSvgKeywords option:

{
  "rules": {
    "value-keyword-case": ["lower", {"camelCaseSvgKeywords": true}]
  }
}

See also this demo.

from stylelint-config-standard.

rohm1 avatar rohm1 commented on July 17, 2024

@ybiquitous thanks, but this is at least a default config bug. I should not have to configure anything for standard CSS properties and values.

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

Revisit old issues:

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

Just to confirm, are both valid, e.g., optimizeLegibility and optimizelegibility?

from stylelint-config-standard.

rohm1 avatar rohm1 commented on July 17, 2024

Not sure, the specs make only mention of the camel case option (https://svgwg.org/svg2-draft/painting.html#TextRenderingProperty). But both Firefox and Chrome seem to accept camel case and lowercase.

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

Umm, if we enable camelCaseSvgKeywords, the following valid CSS using the currentcolor keyword will be reported:

a {
  color: currentcolor;
/*       ^ Expected "currentcolor" to be "currentColor"
 */
}

See this demo.

What do you think?

from stylelint-config-standard.

rohm1 avatar rohm1 commented on July 17, 2024

Looks like this is wrong: https://github.com/stylelint/stylelint/blob/main/lib/reference/keywords.js#L265 currentcolor is expected to be camel case but the spec you mention states lowercase.

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

Does the SVG spec support currentColor, right?

from stylelint-config-standard.

ybiquitous avatar ybiquitous commented on July 17, 2024

Umm..., it seems we cannot enable camelCaseSvgKeywords until fixing the problem. 🤔

from stylelint-config-standard.

Mouvedia avatar Mouvedia commented on July 17, 2024

The CSS color 4 tests are all using currentColor:

https://github.com/web-platform-tests/wpt/blob/master/css/css-color/currentcolor-001.html
https://github.com/web-platform-tests/wpt/blob/master/css/css-color/currentcolor-002.html
https://github.com/web-platform-tests/wpt/blob/master/css/css-color/currentcolor-003.html

from stylelint-config-standard.

nschonni avatar nschonni commented on July 17, 2024

I came across this issue, and trying to trace down any upstream issue I found w3c/csswg-drafts#4599
which points over that the values are case insensitive https://drafts.csswg.org/css-values-4/#keywords, so fixing them to the camelCase should be safe

from stylelint-config-standard.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.