mirror of
https://github.com/picocss/pico.git
synced 2025-04-21 00:56:14 -04:00
feat(dropdowns): Dropdowns inside nav
This commit is contained in:
parent
37b6aaab39
commit
e54d1ee4f7
20 changed files with 416 additions and 167 deletions
|
@ -1808,7 +1808,7 @@ canvas {
|
||||||
details {
|
details {
|
||||||
display: block;
|
display: block;
|
||||||
margin-bottom: var(--spacing);
|
margin-bottom: var(--spacing);
|
||||||
padding-bottom: calc(var(--spacing));
|
padding-bottom: var(--spacing);
|
||||||
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
||||||
}
|
}
|
||||||
details summary {
|
details summary {
|
||||||
|
@ -1831,12 +1831,12 @@ details summary::-moz-list-bullet {
|
||||||
}
|
}
|
||||||
details summary::after {
|
details summary::after {
|
||||||
display: block;
|
display: block;
|
||||||
width: 1rem;
|
width: 1.5rem;
|
||||||
height: 1rem;
|
height: 1rem;
|
||||||
float: right;
|
float: right;
|
||||||
transform: rotate(-90deg);
|
transform: rotate(-90deg);
|
||||||
background-image: var(--icon-chevron);
|
background-image: var(--icon-chevron);
|
||||||
background-position: center;
|
background-position: right;
|
||||||
background-size: 1rem auto;
|
background-size: 1rem auto;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
content: "";
|
content: "";
|
||||||
|
@ -1871,6 +1871,7 @@ details[open] > summary::after {
|
||||||
}
|
}
|
||||||
[dir=rtl] details summary::after {
|
[dir=rtl] details summary::after {
|
||||||
float: left;
|
float: left;
|
||||||
|
background-position: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2103,45 +2104,30 @@ details[role=list] {
|
||||||
details[role=list] summary {
|
details[role=list] summary {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
details[role=list] summary:not([role=button]) {
|
|
||||||
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);
|
|
||||||
border-radius: var(--border-radius);
|
|
||||||
background-color: var(--form-element-background-color);
|
|
||||||
color: var(--form-element-placeholder-color);
|
|
||||||
line-height: inherit;
|
|
||||||
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 {
|
|
||||||
border-color: var(--form-element-active-border-color);
|
|
||||||
background-color: var(--form-element-active-background-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button]):focus {
|
|
||||||
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button])::after {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
details[role=list] summary + ul {
|
details[role=list] summary + ul {
|
||||||
|
display: flex;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: auto;
|
top: auto;
|
||||||
right: 0;
|
right: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
flex-direction: column;
|
||||||
|
min-width: -webkit-fit-content;
|
||||||
|
min-width: -moz-fit-content;
|
||||||
|
min-width: fit-content;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
border: var(--border-width) solid var(--dropdown-border-color);
|
border: var(--border-width) solid var(--dropdown-border-color);
|
||||||
border-top: none;
|
|
||||||
border-radius: var(--border-radius);
|
border-radius: var(--border-radius);
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
background-color: var(--dropdown-background-color);
|
background-color: var(--dropdown-background-color);
|
||||||
box-shadow: var(--card-box-shadow);
|
box-shadow: var(--card-box-shadow);
|
||||||
color: var(--dropdown-color);
|
color: var(--dropdown-color);
|
||||||
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
details[role=list] summary + ul li {
|
details[role=list] summary + ul li {
|
||||||
|
width: 100%;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
@ -2163,6 +2149,7 @@ details[role=list] summary + ul li a:hover {
|
||||||
background-color: var(--dropdown-hover-background-color);
|
background-color: var(--dropdown-hover-background-color);
|
||||||
}
|
}
|
||||||
details[role=list] summary::after {
|
details[role=list] summary::after {
|
||||||
|
height: calc(1rem * var(--line-height));
|
||||||
transform: rotate(0deg);
|
transform: rotate(0deg);
|
||||||
}
|
}
|
||||||
details[role=list][disabled] summary, details[role=list].disabled summary {
|
details[role=list][disabled] summary, details[role=list].disabled summary {
|
||||||
|
@ -2188,6 +2175,57 @@ details[role=list][open] summary::before {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]) {
|
||||||
|
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);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
background-color: var(--form-element-background-color);
|
||||||
|
color: var(--form-element-placeholder-color);
|
||||||
|
line-height: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):active, *:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
border-color: var(--form-element-active-border-color);
|
||||||
|
background-color: var(--form-element-active-background-color);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul li details[role=list] {
|
||||||
|
display: inline-block;
|
||||||
|
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) {
|
||||||
|
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
line-height: var(--line-height);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]):focus {
|
||||||
|
background-color: var(--primary-focus);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a:focus {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary {
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul {
|
||||||
|
margin-top: calc(var(--nav-link-spacing-horizontal) * 0.5);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul a {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary[role=button] + ul {
|
||||||
|
margin-top: var(--nav-link-spacing-horizontal);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loading ([aria-busy=true])
|
* Loading ([aria-busy=true])
|
||||||
*/
|
*/
|
||||||
|
|
File diff suppressed because one or more lines are too long
2
css/pico.classless.min.css
vendored
2
css/pico.classless.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
88
css/pico.css
88
css/pico.css
|
@ -2006,7 +2006,7 @@ canvas {
|
||||||
details {
|
details {
|
||||||
display: block;
|
display: block;
|
||||||
margin-bottom: var(--spacing);
|
margin-bottom: var(--spacing);
|
||||||
padding-bottom: calc(var(--spacing));
|
padding-bottom: var(--spacing);
|
||||||
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
||||||
}
|
}
|
||||||
details summary {
|
details summary {
|
||||||
|
@ -2029,12 +2029,12 @@ details summary::-moz-list-bullet {
|
||||||
}
|
}
|
||||||
details summary::after {
|
details summary::after {
|
||||||
display: block;
|
display: block;
|
||||||
width: 1rem;
|
width: 1.5rem;
|
||||||
height: 1rem;
|
height: 1rem;
|
||||||
float: right;
|
float: right;
|
||||||
transform: rotate(-90deg);
|
transform: rotate(-90deg);
|
||||||
background-image: var(--icon-chevron);
|
background-image: var(--icon-chevron);
|
||||||
background-position: center;
|
background-position: right;
|
||||||
background-size: 1rem auto;
|
background-size: 1rem auto;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
content: "";
|
content: "";
|
||||||
|
@ -2072,6 +2072,7 @@ details[open] > summary::after {
|
||||||
}
|
}
|
||||||
[dir=rtl] details summary::after {
|
[dir=rtl] details summary::after {
|
||||||
float: left;
|
float: left;
|
||||||
|
background-position: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2400,45 +2401,30 @@ details[role=list] {
|
||||||
details[role=list] summary {
|
details[role=list] summary {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
details[role=list] summary:not([role=button]) {
|
|
||||||
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);
|
|
||||||
border-radius: var(--border-radius);
|
|
||||||
background-color: var(--form-element-background-color);
|
|
||||||
color: var(--form-element-placeholder-color);
|
|
||||||
line-height: inherit;
|
|
||||||
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 {
|
|
||||||
border-color: var(--form-element-active-border-color);
|
|
||||||
background-color: var(--form-element-active-background-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button]):focus {
|
|
||||||
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button])::after {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
details[role=list] summary + ul {
|
details[role=list] summary + ul {
|
||||||
|
display: flex;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: auto;
|
top: auto;
|
||||||
right: 0;
|
right: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
flex-direction: column;
|
||||||
|
min-width: -webkit-fit-content;
|
||||||
|
min-width: -moz-fit-content;
|
||||||
|
min-width: fit-content;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
border: var(--border-width) solid var(--dropdown-border-color);
|
border: var(--border-width) solid var(--dropdown-border-color);
|
||||||
border-top: none;
|
|
||||||
border-radius: var(--border-radius);
|
border-radius: var(--border-radius);
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
background-color: var(--dropdown-background-color);
|
background-color: var(--dropdown-background-color);
|
||||||
box-shadow: var(--card-box-shadow);
|
box-shadow: var(--card-box-shadow);
|
||||||
color: var(--dropdown-color);
|
color: var(--dropdown-color);
|
||||||
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
details[role=list] summary + ul li {
|
details[role=list] summary + ul li {
|
||||||
|
width: 100%;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
@ -2460,6 +2446,7 @@ details[role=list] summary + ul li a:hover {
|
||||||
background-color: var(--dropdown-hover-background-color);
|
background-color: var(--dropdown-hover-background-color);
|
||||||
}
|
}
|
||||||
details[role=list] summary::after {
|
details[role=list] summary::after {
|
||||||
|
height: calc(1rem * var(--line-height));
|
||||||
transform: rotate(0deg);
|
transform: rotate(0deg);
|
||||||
}
|
}
|
||||||
details[role=list][disabled] summary, details[role=list].disabled summary {
|
details[role=list][disabled] summary, details[role=list].disabled summary {
|
||||||
|
@ -2485,6 +2472,57 @@ details[role=list][open] summary::before {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]) {
|
||||||
|
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);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
background-color: var(--form-element-background-color);
|
||||||
|
color: var(--form-element-placeholder-color);
|
||||||
|
line-height: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):active, *:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
border-color: var(--form-element-active-border-color);
|
||||||
|
background-color: var(--form-element-active-background-color);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul li details[role=list] {
|
||||||
|
display: inline-block;
|
||||||
|
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) {
|
||||||
|
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
line-height: var(--line-height);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]):focus {
|
||||||
|
background-color: var(--primary-focus);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a:focus {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary {
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul {
|
||||||
|
margin-top: calc(var(--nav-link-spacing-horizontal) * 0.5);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul a {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary[role=button] + ul {
|
||||||
|
margin-top: var(--nav-link-spacing-horizontal);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loading ([aria-busy=true])
|
* Loading ([aria-busy=true])
|
||||||
*/
|
*/
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1778,7 +1778,7 @@ canvas {
|
||||||
details {
|
details {
|
||||||
display: block;
|
display: block;
|
||||||
margin-bottom: var(--spacing);
|
margin-bottom: var(--spacing);
|
||||||
padding-bottom: calc(var(--spacing));
|
padding-bottom: var(--spacing);
|
||||||
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
border-bottom: var(--border-width) solid var(--accordion-border-color);
|
||||||
}
|
}
|
||||||
details summary {
|
details summary {
|
||||||
|
@ -1801,12 +1801,12 @@ details summary::-moz-list-bullet {
|
||||||
}
|
}
|
||||||
details summary::after {
|
details summary::after {
|
||||||
display: block;
|
display: block;
|
||||||
width: 1rem;
|
width: 1.5rem;
|
||||||
height: 1rem;
|
height: 1rem;
|
||||||
float: right;
|
float: right;
|
||||||
transform: rotate(-90deg);
|
transform: rotate(-90deg);
|
||||||
background-image: var(--icon-chevron);
|
background-image: var(--icon-chevron);
|
||||||
background-position: center;
|
background-position: right;
|
||||||
background-size: 1rem auto;
|
background-size: 1rem auto;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
content: "";
|
content: "";
|
||||||
|
@ -1841,6 +1841,7 @@ details[open] > summary::after {
|
||||||
}
|
}
|
||||||
[dir=rtl] details summary::after {
|
[dir=rtl] details summary::after {
|
||||||
float: left;
|
float: left;
|
||||||
|
background-position: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2073,45 +2074,30 @@ details[role=list] {
|
||||||
details[role=list] summary {
|
details[role=list] summary {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
details[role=list] summary:not([role=button]) {
|
|
||||||
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);
|
|
||||||
border-radius: var(--border-radius);
|
|
||||||
background-color: var(--form-element-background-color);
|
|
||||||
color: var(--form-element-placeholder-color);
|
|
||||||
line-height: inherit;
|
|
||||||
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 {
|
|
||||||
border-color: var(--form-element-active-border-color);
|
|
||||||
background-color: var(--form-element-active-background-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button]):focus {
|
|
||||||
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
|
||||||
}
|
|
||||||
details[role=list] summary:not([role=button])::after {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
details[role=list] summary + ul {
|
details[role=list] summary + ul {
|
||||||
|
display: flex;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: auto;
|
top: auto;
|
||||||
right: 0;
|
right: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
flex-direction: column;
|
||||||
|
min-width: -webkit-fit-content;
|
||||||
|
min-width: -moz-fit-content;
|
||||||
|
min-width: fit-content;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
border: var(--border-width) solid var(--dropdown-border-color);
|
border: var(--border-width) solid var(--dropdown-border-color);
|
||||||
border-top: none;
|
|
||||||
border-radius: var(--border-radius);
|
border-radius: var(--border-radius);
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
background-color: var(--dropdown-background-color);
|
background-color: var(--dropdown-background-color);
|
||||||
box-shadow: var(--card-box-shadow);
|
box-shadow: var(--card-box-shadow);
|
||||||
color: var(--dropdown-color);
|
color: var(--dropdown-color);
|
||||||
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
details[role=list] summary + ul li {
|
details[role=list] summary + ul li {
|
||||||
|
width: 100%;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
@ -2133,6 +2119,7 @@ details[role=list] summary + ul li a:hover {
|
||||||
background-color: var(--dropdown-hover-background-color);
|
background-color: var(--dropdown-hover-background-color);
|
||||||
}
|
}
|
||||||
details[role=list] summary::after {
|
details[role=list] summary::after {
|
||||||
|
height: calc(1rem * var(--line-height));
|
||||||
transform: rotate(0deg);
|
transform: rotate(0deg);
|
||||||
}
|
}
|
||||||
details[role=list][disabled] summary, details[role=list].disabled summary {
|
details[role=list][disabled] summary, details[role=list].disabled summary {
|
||||||
|
@ -2158,6 +2145,57 @@ details[role=list][open] summary::before {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]) {
|
||||||
|
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);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
background-color: var(--form-element-background-color);
|
||||||
|
color: var(--form-element-placeholder-color);
|
||||||
|
line-height: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):active, *:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
border-color: var(--form-element-active-border-color);
|
||||||
|
background-color: var(--form-element-active-background-color);
|
||||||
|
}
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) > details[role=list] summary:not([role=button]):focus {
|
||||||
|
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul li details[role=list] {
|
||||||
|
display: inline-block;
|
||||||
|
margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) {
|
||||||
|
padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
line-height: var(--line-height);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]):focus {
|
||||||
|
background-color: var(--primary-focus);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list] summary:not([role=button]) a:focus {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary {
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul {
|
||||||
|
margin-top: calc(var(--nav-link-spacing-horizontal) * 0.5);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary + ul a {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
nav ul li details[role=list][open] summary[role=button] + ul {
|
||||||
|
margin-top: var(--nav-link-spacing-horizontal);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loading ([aria-busy=true])
|
* Loading ([aria-busy=true])
|
||||||
*/
|
*/
|
||||||
|
|
File diff suppressed because one or more lines are too long
2
css/pico.fluid.classless.min.css
vendored
2
css/pico.fluid.classless.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
2
css/pico.min.css
vendored
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
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -21,18 +21,21 @@
|
||||||
<h2>Dropdown menus and custom selects without JavaScript.</h2>
|
<h2>Dropdown menus and custom selects without JavaScript.</h2>
|
||||||
</hgroup>
|
</hgroup>
|
||||||
<p>Dropdowns are built with <code><<b>details</b> <i>role</i>=<u>"list"</u>></code> as a wrapper and <code><<b>summary</b>></code> and <code><<b>ul</b>></code> as direct childs.</p>
|
<p>Dropdowns are built with <code><<b>details</b> <i>role</i>=<u>"list"</u>></code> as a wrapper and <code><<b>summary</b>></code> and <code><<b>ul</b>></code> as direct childs.</p>
|
||||||
<p>For style consistency with the form elements, dropdowns are styled like a <a href="forms.html"><code><<b>select</b>></code></a> by default.</p>
|
<p>For style consistency with the form elements, dropdowns are styled like a <a href="forms.html"><select></a> by default.</p>
|
||||||
<article aria-label="Dropdown style">
|
<article aria-label="Dropdowns as Selects">
|
||||||
<details role="list">
|
<details role="list">x
|
||||||
<summary aria-haspopup="listbox">Dropdown</summary>
|
<summary aria-haspopup="listbox">Dropdown</summary>
|
||||||
<ul role="listbox">
|
<ul role="listbox">
|
||||||
<li><a href="#">Mauris vehicula velit</a></li>
|
<li><a href="#">Action</a></li>
|
||||||
<li><a href="#">Nunc dignissim sapien</a></li>
|
<li><a href="#">Another action</a></li>
|
||||||
<li><a href="#">Aenean egestas quam</a></li>
|
<li><a href="#">Something else here</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</details>
|
</details>
|
||||||
<select required>
|
<select required>
|
||||||
<option value="" disabled selected>Select</option>
|
<option value="" disabled selected>Select</option>
|
||||||
|
<option>Option</option>
|
||||||
|
<option>Another option</option>
|
||||||
|
<option>Something else here</option>
|
||||||
</select>
|
</select>
|
||||||
<footer class="code">
|
<footer class="code">
|
||||||
|
|
||||||
|
@ -40,9 +43,9 @@
|
||||||
<<b>details</b> <i>role</i>=<u>"list"</u>>
|
<<b>details</b> <i>role</i>=<u>"list"</u>>
|
||||||
<<b>summary</b> <i>aria-haspopup</i>=<u>"listbox"</u>>Dropdown</<b>summary</b>>
|
<<b>summary</b> <i>aria-haspopup</i>=<u>"listbox"</u>>Dropdown</<b>summary</b>>
|
||||||
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
||||||
<<b>li</b>><<b>a</b>>Mauris vehicula velit</<b>a</b>></<b>li</b>>
|
<<b>li</b>><<b>a</b>>Action</<b>a</b>></<b>li</b>>
|
||||||
<<b>li</b>><<b>a</b>>Nunc dignissim sapien</<b>a</b>></<b>li</b>>
|
<<b>li</b>><<b>a</b>>Another action</<b>a</b>></<b>li</b>>
|
||||||
<<b>li</b>><<b>a</b>>Aenean egestas quam</<b>a</b>></<b>li</b>>
|
<<b>li</b>><<b>a</b>>Something else here</<b>a</b>></<b>li</b>>
|
||||||
</<b>ul</b>>
|
</<b>ul</b>>
|
||||||
</<b>details</b>>
|
</<b>details</b>>
|
||||||
|
|
||||||
|
@ -56,29 +59,29 @@
|
||||||
</footer>
|
</footer>
|
||||||
</article>
|
</article>
|
||||||
<p><code><i>role</i>=<u>"button"</u></code> on the <code><<b>summary</b>></code> element can be used to turn the dropdown into a button.</p>
|
<p><code><i>role</i>=<u>"button"</u></code> on the <code><<b>summary</b>></code> element can be used to turn the dropdown into a button.</p>
|
||||||
<article aria-label="Dropdown style">
|
<article aria-label="Dropdowns as Buttons">
|
||||||
<details role="list">
|
<details role="list">
|
||||||
<summary aria-haspopup="listbox" role="button">Dropdown as a button 1</summary>
|
<summary aria-haspopup="listbox" role="button">Dropdown as a button 1</summary>
|
||||||
<ul role="listbox">
|
<ul role="listbox">
|
||||||
<li><a href="#">Mauris vehicula velit</a></li>
|
<li><a href="#">Action</a></li>
|
||||||
<li><a href="#">Nunc dignissim sapien</a></li>
|
<li><a href="#">Another action</a></li>
|
||||||
<li><a href="#">Aenean egestas quam</a></li>
|
<li><a href="#">Something else here</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</details>
|
</details>
|
||||||
<details role="list">
|
<details role="list">
|
||||||
<summary aria-haspopup="listbox" role="button" class="secondary">Dropdown as a button 2</summary>
|
<summary aria-haspopup="listbox" role="button" class="secondary">Dropdown as a button 2</summary>
|
||||||
<ul role="listbox">
|
<ul role="listbox">
|
||||||
<li><a href="#">Mauris vehicula velit</a></li>
|
<li><a href="#">Action</a></li>
|
||||||
<li><a href="#">Nunc dignissim sapien</a></li>
|
<li><a href="#">Another action</a></li>
|
||||||
<li><a href="#">Aenean egestas quam</a></li>
|
<li><a href="#">Something else here</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</details>
|
</details>
|
||||||
<details role="list">
|
<details role="list">
|
||||||
<summary aria-haspopup="listbox" role="button" class="contrast">Dropdown as a button 3</summary>
|
<summary aria-haspopup="listbox" role="button" class="contrast">Dropdown as a button 3</summary>
|
||||||
<ul role="listbox">
|
<ul role="listbox">
|
||||||
<li><a href="#">Mauris vehicula velit</a></li>
|
<li><a href="#">Action</a></li>
|
||||||
<li><a href="#">Nunc dignissim sapien</a></li>
|
<li><a href="#">Another action</a></li>
|
||||||
<li><a href="#">Aenean egestas quam</a></li>
|
<li><a href="#">Something else here</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</details>
|
</details>
|
||||||
<footer class="code">
|
<footer class="code">
|
||||||
|
@ -89,7 +92,9 @@
|
||||||
Dropdown as a button 1
|
Dropdown as a button 1
|
||||||
</<b>summary</b>>
|
</<b>summary</b>>
|
||||||
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
||||||
<em>…</em>
|
<<b>li</b>><<b>a</b>>Action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Another action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Something else here</<b>a</b>></<b>li</b>>
|
||||||
</<b>ul</b>>
|
</<b>ul</b>>
|
||||||
</<b>details</b>>
|
</<b>details</b>>
|
||||||
|
|
||||||
|
@ -99,7 +104,9 @@
|
||||||
Dropdown as a button 2
|
Dropdown as a button 2
|
||||||
</<b>summary</b>>
|
</<b>summary</b>>
|
||||||
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
||||||
<em>…</em>
|
<<b>li</b>><<b>a</b>>Action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Another action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Something else here</<b>a</b>></<b>li</b>>
|
||||||
</<b>ul</b>>
|
</<b>ul</b>>
|
||||||
</<b>details</b>>
|
</<b>details</b>>
|
||||||
|
|
||||||
|
@ -109,7 +116,9 @@
|
||||||
Dropdown as a button 3
|
Dropdown as a button 3
|
||||||
</<b>summary</b>>
|
</<b>summary</b>>
|
||||||
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
||||||
<em>…</em>
|
<<b>li</b>><<b>a</b>>Action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Another action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Something else here</<b>a</b>></<b>li</b>>
|
||||||
</<b>ul</b>>
|
</<b>ul</b>>
|
||||||
</<b>details</b>>
|
</<b>details</b>>
|
||||||
</code></pre>
|
</code></pre>
|
||||||
|
@ -117,7 +126,7 @@
|
||||||
</footer>
|
</footer>
|
||||||
</article>
|
</article>
|
||||||
<p>Dropdowns can be used as custom selects with <code><<b>input</b> <i>type</i>=<u>"radio"</u>></code> or <code><<b>input</b> <i>type</i>=<u>"checkbox"</u>></code></p>
|
<p>Dropdowns can be used as custom selects with <code><<b>input</b> <i>type</i>=<u>"radio"</u>></code> or <code><<b>input</b> <i>type</i>=<u>"checkbox"</u>></code></p>
|
||||||
<article aria-label="Dropdown style">
|
<article aria-label="Dropdowns with radio buttons or checkboxes">
|
||||||
<details role="list">
|
<details role="list">
|
||||||
<summary aria-haspopup="listbox">Select single element</summary>
|
<summary aria-haspopup="listbox">Select single element</summary>
|
||||||
<ul role="listbox">
|
<ul role="listbox">
|
||||||
|
@ -218,6 +227,52 @@
|
||||||
|
|
||||||
</footer>
|
</footer>
|
||||||
</article>
|
</article>
|
||||||
|
<p>Dropdowns can be used inside the <a href="navs.html"><nav></a> component.</p>
|
||||||
|
<article aria-label="Dropdowns inside a nav">
|
||||||
|
<nav>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Brand</strong></li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#" onclick="event.preventDefault()">Link</a></li>
|
||||||
|
<li><a href="#" onclick="event.preventDefault()">Link</a></li>
|
||||||
|
<li>
|
||||||
|
<details role="list" dir="rtl">
|
||||||
|
<summary aria-haspopup="listbox">Dropdown</summary>
|
||||||
|
<ul role="listbox">
|
||||||
|
<li><a href="#">Action</a></li>
|
||||||
|
<li><a href="#">Another action</a></li>
|
||||||
|
<li><a href="#">Something else here</a></li>
|
||||||
|
</ul>
|
||||||
|
</details>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
<footer class="code">
|
||||||
|
|
||||||
|
<pre><code><<b>nav</b>>
|
||||||
|
<<b>ul</b>>
|
||||||
|
<<b>li</b>><<b>strong</b>>Brand</<b>strong</b>></<b>li</b>>
|
||||||
|
</<b>ul</b>>
|
||||||
|
<<b>ul</b>>
|
||||||
|
<<b>li</b>><<b>a</b> <i>href</i>=<u>"#"</u>>Link</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b> <i>href</i>=<u>"#"</u>>Link</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>>
|
||||||
|
<<b>details</b> <i>role</i>=<u>"list"</u> <i>dir</i>=<u>"rtl"</u>>
|
||||||
|
<<b>summary</b> <i>aria-haspopup</i>=<u>"listbox"</u>>Dropdown</<b>summary</b>>
|
||||||
|
<<b>ul</b> <i>role</i>=<u>"listbox"</u>>
|
||||||
|
<<b>li</b>><<b>a</b>>Action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Another action</<b>a</b>></<b>li</b>>
|
||||||
|
<<b>li</b>><<b>a</b>>Something else here</<b>a</b>></<b>li</b>>
|
||||||
|
</<b>ul</b>>
|
||||||
|
</<b>details</b>>
|
||||||
|
</<b>li</b>>
|
||||||
|
</<b>ul</b>>
|
||||||
|
</<b>nav</b>></code></pre>
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
</article>
|
||||||
|
<p>ℹ️ Dropdowns inside a <code><<b>nav</b>></code> are still experimental and will probably evolve.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
${require('./_footer.html')}
|
${require('./_footer.html')}
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<em>...</em>
|
<em>...</em>
|
||||||
</<b>html</b>></code></pre>
|
</<b>html</b>></code></pre>
|
||||||
|
|
||||||
<p>The RTL feature is still experimental and will probably evolve.</p>
|
<p>ℹ️ The RTL feature is still experimental and will probably evolve.</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
${require('./_footer.html')}
|
${require('./_footer.html')}
|
||||||
|
|
|
@ -6,63 +6,31 @@ details[role="list"] {
|
||||||
summary {
|
summary {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
|
||||||
&:not([role="button"]) {
|
|
||||||
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);
|
|
||||||
border-radius: var(--border-radius);
|
|
||||||
background-color: var(--form-element-background-color);
|
|
||||||
color: var(--form-element-placeholder-color);
|
|
||||||
line-height: inherit;
|
|
||||||
cursor: pointer;
|
|
||||||
|
|
||||||
@if $enable-transitions {
|
|
||||||
transition: background-color var(--transition),
|
|
||||||
border-color var(--transition), color var(--transition),
|
|
||||||
box-shadow var(--transition);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Active & Focus
|
|
||||||
&:active,
|
|
||||||
&:focus {
|
|
||||||
border-color: var(--form-element-active-border-color);
|
|
||||||
background-color: var(--form-element-active-background-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Focus
|
|
||||||
&:focus {
|
|
||||||
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Marker
|
|
||||||
&::after {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
& + ul {
|
& + ul {
|
||||||
|
display: flex;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: auto;
|
top: auto;
|
||||||
right: 0;
|
right: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
flex-direction: column;
|
||||||
|
min-width: fit-content;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
border: var(--border-width) solid var(--dropdown-border-color);
|
border: var(--border-width) solid var(--dropdown-border-color);
|
||||||
border-top: none;
|
|
||||||
border-radius: var(--border-radius);
|
border-radius: var(--border-radius);
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
background-color: var(--dropdown-background-color);
|
background-color: var(--dropdown-background-color);
|
||||||
box-shadow: var(--card-box-shadow);
|
box-shadow: var(--card-box-shadow);
|
||||||
color: var(--dropdown-color);
|
color: var(--dropdown-color);
|
||||||
|
white-space: nowrap;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
|
width: 100%;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
padding: calc(var(--form-element-spacing-vertical) * 0.5)
|
||||||
|
var(--form-element-spacing-horizontal);
|
||||||
list-style: none;
|
list-style: none;
|
||||||
|
|
||||||
&:first-of-type {
|
&:first-of-type {
|
||||||
|
@ -75,8 +43,10 @@ details[role="list"] {
|
||||||
|
|
||||||
a {
|
a {
|
||||||
display: block;
|
display: block;
|
||||||
margin: calc(var(--form-element-spacing-vertical) * -0.5) calc(var(--form-element-spacing-horizontal) * -1);
|
margin: calc(var(--form-element-spacing-vertical) * -0.5)
|
||||||
padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
|
calc(var(--form-element-spacing-horizontal) * -1);
|
||||||
|
padding: calc(var(--form-element-spacing-vertical) * 0.5)
|
||||||
|
var(--form-element-spacing-horizontal);
|
||||||
color: var(--dropdown-color);
|
color: var(--dropdown-color);
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
|
|
||||||
|
@ -85,10 +55,11 @@ details[role="list"] {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Marker
|
||||||
&::after {
|
&::after {
|
||||||
|
height: calc(1rem * var(--line-height));
|
||||||
transform: rotate(0deg);
|
transform: rotate(0deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -113,8 +84,93 @@ details[role="list"] {
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
content: '';
|
content: "";
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// <summary> as a <select>
|
||||||
|
*:not(nav > ul > li):not(nav > aside > ul > li) {
|
||||||
|
> details[role="list"] {
|
||||||
|
summary {
|
||||||
|
&:not([role="button"]) {
|
||||||
|
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);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
background-color: var(--form-element-background-color);
|
||||||
|
color: var(--form-element-placeholder-color);
|
||||||
|
line-height: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
@if $enable-transitions {
|
||||||
|
transition: background-color var(--transition),
|
||||||
|
border-color var(--transition), color var(--transition),
|
||||||
|
box-shadow var(--transition);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active,
|
||||||
|
&:focus {
|
||||||
|
border-color: var(--form-element-active-border-color);
|
||||||
|
background-color: var(--form-element-active-background-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dropdown inside <nav>
|
||||||
|
nav ul li {
|
||||||
|
details[role="list"] {
|
||||||
|
display: inline-block;
|
||||||
|
margin: calc(var(--nav-link-spacing-vertical) * -1)
|
||||||
|
calc(var(--nav-link-spacing-horizontal) * -1);
|
||||||
|
|
||||||
|
summary:not([role="button"]) {
|
||||||
|
padding: var(--nav-link-spacing-vertical)
|
||||||
|
var(--nav-link-spacing-horizontal);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
line-height: var(--line-height);
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
background-color: var(--primary-focus);
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
pointer-events: none;
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&[open] summary {
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
|
||||||
|
& + ul {
|
||||||
|
margin-top: calc(var(--nav-link-spacing-horizontal) * 0.5);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
|
||||||
|
a {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&[role="button"] {
|
||||||
|
& + ul {
|
||||||
|
margin-top: var(--nav-link-spacing-horizontal);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ dialog {
|
||||||
> footer {
|
> footer {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
|
|
||||||
[role='button'] {
|
[role="button"] {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
|
|
||||||
&:not(:first-of-type) {
|
&:not(:first-of-type) {
|
||||||
|
@ -104,7 +104,7 @@ dialog {
|
||||||
|
|
||||||
// Closed state
|
// Closed state
|
||||||
&:not([open]),
|
&:not([open]),
|
||||||
&[open='false'] {
|
&[open="false"] {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
border: 0.1875em solid currentColor;
|
border: 0.1875em solid currentColor;
|
||||||
border-radius: 1em;
|
border-radius: 1em;
|
||||||
border-right-color: transparent;
|
border-right-color: transparent;
|
||||||
content: '';
|
content: "";
|
||||||
vertical-align: text-bottom;
|
vertical-align: text-bottom;
|
||||||
vertical-align: -.125em; // Visual alignment
|
vertical-align: -.125em; // Visual alignment
|
||||||
animation: spinner 0.75s linear infinite;
|
animation: spinner 0.75s linear infinite;
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
border-left: .3rem solid transparent;
|
border-left: .3rem solid transparent;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
content: '';
|
content: "";
|
||||||
color: var(--tooltip-background-color);
|
color: var(--tooltip-background-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue