postcss-selector-parser icon indicating copy to clipboard operation
postcss-selector-parser copied to clipboard

Attribute selector's case-sensitivity identifier `s`

Open SaekiTominaga opened this issue 4 months ago • 1 comments

According to the CSS Selectors Level 4 specification, the Case-sensitivity identifiers are i and s.

However, it seems that postcss-selector-parser(v7.1.0) does not support s.

import parser from 'postcss-selector-parser';

const transform = (selectors: parser.Root) => {
	selectors.walkAttributes((attr: parser.Attribute) => {
		console.log(attr);
	});
};

const processor = parser(transform);
processor.processSync('[class="foo" i] {}'); // { ..., insensitive: true, raws: { value: '"foo"' }, ... }
processor.processSync('[class="foo" s] {}'); // { ..., insensitive: false, raws: { value: '"foo"', insensitiveFlag: 's' }, ... }
processor.processSync('[class="foo" xxx] {}'); // { ..., insensitive: false, raws: { value: '"foo"', insensitiveFlag: 'xxx' }, ... }

SaekiTominaga avatar Sep 21 '25 12:09 SaekiTominaga