style(dropdowns)

This commit is contained in:
Lucas Larroche 2022-03-06 09:37:03 +07:00
parent 667c94951a
commit 9a0db7ab7f
22 changed files with 300 additions and 95 deletions

View file

@ -662,7 +662,8 @@ ul {
font-size: var(--font-size);
}
a {
a,
[role=link] {
--color: var(--primary);
--background-color: transparent;
outline: none;
@ -674,11 +675,16 @@ a {
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
}
a[aria-current], a:hover, a:active, a:focus {
a[aria-current], a:hover, a:active, a:focus,
[role=link][aria-current],
[role=link]:hover,
[role=link]:active,
[role=link]:focus {
--color: var(--primary-hover);
--text-decoration: underline;
}
a:focus {
a:focus,
[role=link]:focus {
--background-color: var(--primary-focus);
}
@ -1817,7 +1823,7 @@ details summary {
cursor: pointer;
transition: color var(--transition);
}
details summary:not([role=button]) {
details summary:not([role]) {
color: var(--accordion-close-summary-color);
}
details summary::-webkit-details-marker {
@ -1859,7 +1865,7 @@ details summary[role=button]::after {
details[open] > summary {
margin-bottom: calc(var(--spacing));
}
details[open] > summary:not([role=button]):not(:focus) {
details[open] > summary:not([role]):not(:focus) {
color: var(--accordion-open-summary-color);
}
details[open] > summary::after {
@ -2000,14 +2006,19 @@ nav li {
nav li > * {
--spacing: 0;
}
nav a {
nav a,
nav [role=link] {
display: inline-block;
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
border-radius: var(--border-radius);
text-decoration: none;
}
nav a[aria-current], nav a:hover, nav a:active, nav a:focus {
nav a[aria-current], nav a:hover, nav a:active, nav a:focus,
nav [role=link][aria-current],
nav [role=link]:hover,
nav [role=link]:active,
nav [role=link]:focus {
text-decoration: none;
}
@ -2185,7 +2196,7 @@ details[role=list] {
details[role=list] summary {
margin-bottom: 0;
}
details[role=list] summary:not([role=button]) {
details[role=list] summary:not([role]) {
height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
border: var(--border-width) solid var(--form-element-border-color);
@ -2196,11 +2207,11 @@ details[role=list] summary:not([role=button]) {
cursor: pointer;
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
}
details[role=list] summary:not([role=button]):active, details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):active, details[role=list] summary:not([role]):focus {
border-color: var(--form-element-active-border-color);
background-color: var(--form-element-active-background-color);
}
details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):focus {
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
}
details[role=list][open] summary {
@ -2220,7 +2231,8 @@ details[role=list][open] summary::before {
cursor: default;
}
nav [role=list] summary, nav [role=list] a {
nav [role=list] summary,
nav [role=list] a {
display: flex;
direction: ltr;
}
@ -2236,11 +2248,25 @@ nav [role=list] > ul li a {
border-radius: 0;
}
nav [role=list] summary,
nav [role=list] summary:not([role]) {
height: auto;
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
}
nav [role=list][open] summary {
border-radius: var(--border-radius);
}
nav [role=list] summary + ul {
margin-top: 2px;
margin-top: var(--outline-width);
}
nav [role=list] summary[role=link] {
margin-bottom: calc(var(--nav-link-spacing-vertical) * -1);
line-height: var(--line-height);
}
nav [role=list] summary[role=link] + ul {
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-link-spacing-horizontal) * -1);
margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1);
}
li[role=list]:hover > ul,
@ -2250,7 +2276,7 @@ li[role=list] a:focus ~ ul {
}
li[role=list] > ul {
display: none;
margin-top: calc(var(--nav-link-spacing-vertical) + 2px);
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -692,7 +692,8 @@ ul {
font-size: var(--font-size);
}
a {
a,
[role=link] {
--color: var(--primary);
--background-color: transparent;
outline: none;
@ -704,29 +705,46 @@ a {
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
}
a[aria-current], a:hover, a:active, a:focus {
a[aria-current], a:hover, a:active, a:focus,
[role=link][aria-current],
[role=link]:hover,
[role=link]:active,
[role=link]:focus {
--color: var(--primary-hover);
--text-decoration: underline;
}
a:focus {
a:focus,
[role=link]:focus {
--background-color: var(--primary-focus);
}
a.secondary {
a.secondary,
[role=link].secondary {
--color: var(--secondary);
}
a.secondary[aria-current], a.secondary:hover, a.secondary:active, a.secondary:focus {
a.secondary[aria-current], a.secondary:hover, a.secondary:active, a.secondary:focus,
[role=link].secondary[aria-current],
[role=link].secondary:hover,
[role=link].secondary:active,
[role=link].secondary:focus {
--color: var(--secondary-hover);
}
a.secondary:focus {
a.secondary:focus,
[role=link].secondary:focus {
--background-color: var(--secondary-focus);
}
a.contrast {
a.contrast,
[role=link].contrast {
--color: var(--contrast);
}
a.contrast[aria-current], a.contrast:hover, a.contrast:active, a.contrast:focus {
a.contrast[aria-current], a.contrast:hover, a.contrast:active, a.contrast:focus,
[role=link].contrast[aria-current],
[role=link].contrast:hover,
[role=link].contrast:active,
[role=link].contrast:focus {
--color: var(--contrast-hover);
}
a.contrast:focus {
a.contrast:focus,
[role=link].contrast:focus {
--background-color: var(--contrast-focus);
}
@ -2015,7 +2033,7 @@ details summary {
cursor: pointer;
transition: color var(--transition);
}
details summary:not([role=button]) {
details summary:not([role]) {
color: var(--accordion-close-summary-color);
}
details summary::-webkit-details-marker {
@ -2060,7 +2078,7 @@ details summary[role=button]:not(.outline).contrast::after {
details[open] > summary {
margin-bottom: calc(var(--spacing));
}
details[open] > summary:not([role=button]):not(:focus) {
details[open] > summary:not([role]):not(:focus) {
color: var(--accordion-open-summary-color);
}
details[open] > summary::after {
@ -2297,14 +2315,19 @@ nav li {
nav li > * {
--spacing: 0;
}
nav a {
nav a,
nav [role=link] {
display: inline-block;
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
border-radius: var(--border-radius);
text-decoration: none;
}
nav a[aria-current], nav a:hover, nav a:active, nav a:focus {
nav a[aria-current], nav a:hover, nav a:active, nav a:focus,
nav [role=link][aria-current],
nav [role=link]:hover,
nav [role=link]:active,
nav [role=link]:focus {
text-decoration: none;
}
@ -2482,7 +2505,7 @@ details[role=list] {
details[role=list] summary {
margin-bottom: 0;
}
details[role=list] summary:not([role=button]) {
details[role=list] summary:not([role]) {
height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
border: var(--border-width) solid var(--form-element-border-color);
@ -2493,11 +2516,11 @@ details[role=list] summary:not([role=button]) {
cursor: pointer;
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
}
details[role=list] summary:not([role=button]):active, details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):active, details[role=list] summary:not([role]):focus {
border-color: var(--form-element-active-border-color);
background-color: var(--form-element-active-background-color);
}
details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):focus {
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
}
details[role=list][open] summary {
@ -2517,7 +2540,8 @@ details[role=list][open] summary::before {
cursor: default;
}
nav [role=list] summary, nav [role=list] a {
nav [role=list] summary,
nav [role=list] a {
display: flex;
direction: ltr;
}
@ -2533,11 +2557,25 @@ nav [role=list] > ul li a {
border-radius: 0;
}
nav [role=list] summary,
nav [role=list] summary:not([role]) {
height: auto;
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
}
nav [role=list][open] summary {
border-radius: var(--border-radius);
}
nav [role=list] summary + ul {
margin-top: 2px;
margin-top: var(--outline-width);
}
nav [role=list] summary[role=link] {
margin-bottom: calc(var(--nav-link-spacing-vertical) * -1);
line-height: var(--line-height);
}
nav [role=list] summary[role=link] + ul {
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-link-spacing-horizontal) * -1);
margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1);
}
li[role=list]:hover > ul,
@ -2547,7 +2585,7 @@ li[role=list] a:focus ~ ul {
}
li[role=list] > ul {
display: none;
margin-top: calc(var(--nav-link-spacing-vertical) + 2px);
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
}

File diff suppressed because one or more lines are too long

View file

@ -632,7 +632,8 @@ ul {
font-size: var(--font-size);
}
a {
a,
[role=link] {
--color: var(--primary);
--background-color: transparent;
outline: none;
@ -644,11 +645,16 @@ a {
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
}
a[aria-current], a:hover, a:active, a:focus {
a[aria-current], a:hover, a:active, a:focus,
[role=link][aria-current],
[role=link]:hover,
[role=link]:active,
[role=link]:focus {
--color: var(--primary-hover);
--text-decoration: underline;
}
a:focus {
a:focus,
[role=link]:focus {
--background-color: var(--primary-focus);
}
@ -1787,7 +1793,7 @@ details summary {
cursor: pointer;
transition: color var(--transition);
}
details summary:not([role=button]) {
details summary:not([role]) {
color: var(--accordion-close-summary-color);
}
details summary::-webkit-details-marker {
@ -1829,7 +1835,7 @@ details summary[role=button]::after {
details[open] > summary {
margin-bottom: calc(var(--spacing));
}
details[open] > summary:not([role=button]):not(:focus) {
details[open] > summary:not([role]):not(:focus) {
color: var(--accordion-open-summary-color);
}
details[open] > summary::after {
@ -1970,14 +1976,19 @@ nav li {
nav li > * {
--spacing: 0;
}
nav a {
nav a,
nav [role=link] {
display: inline-block;
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
border-radius: var(--border-radius);
text-decoration: none;
}
nav a[aria-current], nav a:hover, nav a:active, nav a:focus {
nav a[aria-current], nav a:hover, nav a:active, nav a:focus,
nav [role=link][aria-current],
nav [role=link]:hover,
nav [role=link]:active,
nav [role=link]:focus {
text-decoration: none;
}
@ -2155,7 +2166,7 @@ details[role=list] {
details[role=list] summary {
margin-bottom: 0;
}
details[role=list] summary:not([role=button]) {
details[role=list] summary:not([role]) {
height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
border: var(--border-width) solid var(--form-element-border-color);
@ -2166,11 +2177,11 @@ details[role=list] summary:not([role=button]) {
cursor: pointer;
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
}
details[role=list] summary:not([role=button]):active, details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):active, details[role=list] summary:not([role]):focus {
border-color: var(--form-element-active-border-color);
background-color: var(--form-element-active-background-color);
}
details[role=list] summary:not([role=button]):focus {
details[role=list] summary:not([role]):focus {
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
}
details[role=list][open] summary {
@ -2190,7 +2201,8 @@ details[role=list][open] summary::before {
cursor: default;
}
nav [role=list] summary, nav [role=list] a {
nav [role=list] summary,
nav [role=list] a {
display: flex;
direction: ltr;
}
@ -2206,11 +2218,25 @@ nav [role=list] > ul li a {
border-radius: 0;
}
nav [role=list] summary,
nav [role=list] summary:not([role]) {
height: auto;
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
}
nav [role=list][open] summary {
border-radius: var(--border-radius);
}
nav [role=list] summary + ul {
margin-top: 2px;
margin-top: var(--outline-width);
}
nav [role=list] summary[role=link] {
margin-bottom: calc(var(--nav-link-spacing-vertical) * -1);
line-height: var(--line-height);
}
nav [role=list] summary[role=link] + ul {
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-link-spacing-horizontal) * -1);
margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1);
}
li[role=list]:hover > ul,
@ -2220,7 +2246,7 @@ li[role=list] a:focus ~ ul {
}
li[role=list] > ul {
display: none;
margin-top: calc(var(--nav-link-spacing-vertical) + 2px);
margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
-webkit-margin-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
}

File diff suppressed because one or more lines are too long

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

File diff suppressed because one or more lines are too long

View file

@ -624,7 +624,8 @@ ul {
font-size: var(--font-size);
}
a {
a,
[role=link] {
--color: var(--primary);
--background-color: transparent;
outline: none;
@ -633,29 +634,46 @@ a {
-webkit-text-decoration: var(--text-decoration);
text-decoration: var(--text-decoration);
}
a[aria-current], a:hover, a:active, a:focus {
a[aria-current], a:hover, a:active, a:focus,
[role=link][aria-current],
[role=link]:hover,
[role=link]:active,
[role=link]:focus {
--color: var(--primary-hover);
--text-decoration: underline;
}
a:focus {
a:focus,
[role=link]:focus {
--background-color: var(--primary-focus);
}
a.secondary {
a.secondary,
[role=link].secondary {
--color: var(--secondary);
}
a.secondary[aria-current], a.secondary:hover, a.secondary:active, a.secondary:focus {
a.secondary[aria-current], a.secondary:hover, a.secondary:active, a.secondary:focus,
[role=link].secondary[aria-current],
[role=link].secondary:hover,
[role=link].secondary:active,
[role=link].secondary:focus {
--color: var(--secondary-hover);
}
a.secondary:focus {
a.secondary:focus,
[role=link].secondary:focus {
--background-color: var(--secondary-focus);
}
a.contrast {
a.contrast,
[role=link].contrast {
--color: var(--contrast);
}
a.contrast[aria-current], a.contrast:hover, a.contrast:active, a.contrast:focus {
a.contrast[aria-current], a.contrast:hover, a.contrast:active, a.contrast:focus,
[role=link].contrast[aria-current],
[role=link].contrast:hover,
[role=link].contrast:active,
[role=link].contrast:focus {
--color: var(--contrast-hover);
}
a.contrast:focus {
a.contrast:focus,
[role=link].contrast:focus {
--background-color: var(--contrast-focus);
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long