refactor: reduce [role="button"] specifity

This commit is contained in:
Lucas Larroche 2024-01-05 01:42:14 +07:00
parent 9742a993fc
commit 97f20244e6
10 changed files with 20 additions and 20 deletions

View file

@ -736,7 +736,7 @@ figure figcaption {
/** /**
* Link * Link
*/ */
a:not([role=button]), :where(a:not([role=button])),
[role=link] { [role=link] {
--pico-color: var(--pico-primary); --pico-color: var(--pico-primary);
--pico-background-color: transparent; --pico-background-color: transparent;
@ -752,13 +752,13 @@ a:not([role=button]),
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition);
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition);
} }
a:not([role=button]):is([aria-current]:not([aria-current=false]), :hover, :active, :focus), :where(a:not([role=button])):is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) { [role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-primary-hover); --pico-color: var(--pico-primary-hover);
--pico-underline: var(--pico-primary-hover-underline); --pico-underline: var(--pico-primary-hover-underline);
--pico-text-decoration: underline; --pico-text-decoration: underline;
} }
a:not([role=button]):focus-visible, :where(a:not([role=button])):focus-visible,
[role=link]:focus-visible { [role=link]:focus-visible {
box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus); box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -821,7 +821,7 @@ figure figcaption {
/** /**
* Link * Link
*/ */
a:not([role=button]), :where(a:not([role=button])),
[role=link] { [role=link] {
--pico-color: var(--pico-primary); --pico-color: var(--pico-primary);
--pico-background-color: transparent; --pico-background-color: transparent;
@ -837,32 +837,32 @@ a:not([role=button]),
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition);
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition);
} }
a:not([role=button]):is([aria-current]:not([aria-current=false]), :hover, :active, :focus), :where(a:not([role=button])):is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) { [role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-primary-hover); --pico-color: var(--pico-primary-hover);
--pico-underline: var(--pico-primary-hover-underline); --pico-underline: var(--pico-primary-hover-underline);
--pico-text-decoration: underline; --pico-text-decoration: underline;
} }
a:not([role=button]):focus-visible, :where(a:not([role=button])):focus-visible,
[role=link]:focus-visible { [role=link]:focus-visible {
box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus); box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
} }
a:not([role=button]).secondary, :where(a:not([role=button])).secondary,
[role=link].secondary { [role=link].secondary {
--pico-color: var(--pico-secondary); --pico-color: var(--pico-secondary);
--pico-underline: var(--pico-secondary-underline); --pico-underline: var(--pico-secondary-underline);
} }
a:not([role=button]).secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus), :where(a:not([role=button])).secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link].secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) { [role=link].secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-secondary-hover); --pico-color: var(--pico-secondary-hover);
--pico-underline: var(--pico-secondary-hover-underline); --pico-underline: var(--pico-secondary-hover-underline);
} }
a:not([role=button]).contrast, :where(a:not([role=button])).contrast,
[role=link].contrast { [role=link].contrast {
--pico-color: var(--pico-contrast); --pico-color: var(--pico-contrast);
--pico-underline: var(--pico-contrast-underline); --pico-underline: var(--pico-contrast-underline);
} }
a:not([role=button]).contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus), :where(a:not([role=button])).contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link].contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) { [role=link].contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-contrast-hover); --pico-color: var(--pico-contrast-hover);
--pico-underline: var(--pico-contrast-hover-underline); --pico-underline: var(--pico-contrast-hover-underline);

File diff suppressed because one or more lines are too long

View file

@ -699,7 +699,7 @@ figure figcaption {
/** /**
* Link * Link
*/ */
a:not([role=button]), :where(a:not([role=button])),
[role=link] { [role=link] {
--pico-color: var(--pico-primary); --pico-color: var(--pico-primary);
--pico-background-color: transparent; --pico-background-color: transparent;
@ -715,13 +715,13 @@ a:not([role=button]),
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition);
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition); transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition), -webkit-text-decoration var(--pico-transition);
} }
a:not([role=button]):is([aria-current]:not([aria-current=false]), :hover, :active, :focus), :where(a:not([role=button])):is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) { [role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-primary-hover); --pico-color: var(--pico-primary-hover);
--pico-underline: var(--pico-primary-hover-underline); --pico-underline: var(--pico-primary-hover-underline);
--pico-text-decoration: underline; --pico-text-decoration: underline;
} }
a:not([role=button]):focus-visible, :where(a:not([role=button])):focus-visible,
[role=link]:focus-visible { [role=link]:focus-visible {
box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus); box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

2
css/pico.min.css vendored

File diff suppressed because one or more lines are too long

View file

@ -6,7 +6,7 @@
* Link * Link
*/ */
a:not([role="button"]), :where(a:not([role="button"])),
[role="link"] { [role="link"] {
#{$css-var-prefix}color: var(#{$css-var-prefix}primary); #{$css-var-prefix}color: var(#{$css-var-prefix}primary);
#{$css-var-prefix}background-color: transparent; #{$css-var-prefix}background-color: transparent;