Skip to content

Commit ddf41a1

Browse files
committed
Closes Legend element not styled in role="group" #23
Added compatability with `.dropdown` to the `role=group` Put a dropdown submenu in the group examples Improved borders on `[role=group] > label, [role=group] > legend` to ensure the same size as other group elements
1 parent 324f6fc commit ddf41a1

File tree

265 files changed

+13809
-4063
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

265 files changed

+13809
-4063
lines changed

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ root = true
55

66
# Unix-style newlines with a newline ending every file
77
[*]
8-
end_of_line = lf
8+
end_of_line = crlf
99
insert_final_newline = true
1010
charset = utf-8
1111
trim_trailing_whitespace = true

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,5 @@ package-lock.json
3535
/scss/components/_offcanvas.scss
3636
docs/js/DialogManager.js
3737
docs/modal.html
38+
39+
/.yohn

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</a>
99
</p>
1010

11-
[![Github release](https://img.shields.io/github/v/release/Yohn/PicoCSS?color=0172ad&logo=github&logoColor=white)](https://github.com/Yohn/PicoCSS/releases/latest)
11+
[![Github release](https://img.shields.io/github/v/release/Yohn/PicoCSS?color=0172.ad&logo=github&logoColor=white)](https://github.com/Yohn/PicoCSS/releases/latest)
1212
[![npm version](https://img.shields.io/npm/v/@yohns/picocss?color=0172ad)](https://www.npmjs.com/package/@yohns/picocss)
1313
[![License](https://img.shields.io/badge/license-MIT-%230172ad)](https://github.com/Yohn/PicoCSS/blob/master/LICENSE.md)
1414
<!-- [![Twitter URL](https://img.shields.io/twitter/url/https/twitter.com/picocss.svg?style=social&label=Follow%20%40picocss)](https://twitter.com/picocss) -->
@@ -77,7 +77,7 @@ There are 4 ways to get started with pico.css:
7777
Alternatively, you can use [jsDelivr CDN](https://www.jsdelivr.com/package/npm/@yohns/picocss) to link pico.css.
7878

7979
```html
80-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].1/css/pico.min.css" />
80+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].2/css/pico.min.css" />
8181
```
8282

8383
### Install with NPM
@@ -135,7 +135,7 @@ Use the default `.classless` version if you need centered viewports:
135135
```html
136136
<link
137137
rel="stylesheet"
138-
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].1/css/pico.classless.min.css"
138+
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].2/css/pico.classless.min.css"
139139
/>
140140
```
141141

@@ -144,7 +144,7 @@ Or use the `.fluid.classless` version if you need a fluid container:
144144
```html
145145
<link
146146
rel="stylesheet"
147-
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].1/css/pico.fluid.classless.min.css"
147+
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].2/css/pico.fluid.classless.min.css"
148148
/>
149149
```
150150

@@ -159,7 +159,7 @@ Then just write pure HTML, and it should look great:
159159
<meta name="color-scheme" content="light dark" />
160160
<link
161161
rel="stylesheet"
162-
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].1/css/pico.classless.min.css"
162+
href="https://cdn.jsdelivr.net/npm/@yohns/[email protected].2/css/pico.classless.min.css"
163163
/>
164164
<title>Hello, world!</title>
165165
</head>

css/pico.amber.css

Lines changed: 105 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
@charset "UTF-8";
22
/*!
3-
* Pico CSS ✨ v2.2.1 (https://github.com/Yohn/PicoCSS)
3+
* Pico CSS ✨ v2.2.2 (https://github.com/Yohn/PicoCSS)
44
* Copyright 2019-2024 - Licensed under MIT
55
*/
66
/**
@@ -1857,7 +1857,8 @@ input,
18571857
optgroup,
18581858
select,
18591859
textarea,
1860-
[role=group] > label {
1860+
[role=group] > label,
1861+
[role=group] > legend {
18611862
margin: 0;
18621863
font-size: 1rem;
18631864
line-height: var(--pico-line-height);
@@ -1931,8 +1932,7 @@ textarea {
19311932
border-width: 0;
19321933
}
19331934

1934-
input:not([type=checkbox], [type=radio], [type=range], [type=date]),
1935-
[role=group] > label {
1935+
input:not([type=checkbox], [type=radio], [type=range], [type=date]) {
19361936
height: calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);
19371937
}
19381938

@@ -1966,7 +1966,8 @@ textarea {
19661966
input:not([type=checkbox], [type=radio], [type=range], [type=file]),
19671967
select,
19681968
textarea,
1969-
[role=group] > label {
1969+
[role=group] > label,
1970+
[role=group] > legend {
19701971
-webkit-appearance: none;
19711972
-moz-appearance: none;
19721973
appearance: none;
@@ -1976,7 +1977,8 @@ textarea,
19761977
input,
19771978
select,
19781979
textarea,
1979-
[role=group] > label {
1980+
[role=group] > label,
1981+
[role=group] > legend {
19801982
--pico-background-color: var(--pico-form-element-background-color);
19811983
--pico-border-color: var(--pico-form-element-border-color);
19821984
--pico-color: var(--pico-form-element-color);
@@ -2018,6 +2020,7 @@ input:not([type=submit],
20182020

20192021
input:not([type=submit], [type=button], [type=reset])[disabled],
20202022
[role=group] > label,
2023+
[role=group] > legend,
20212024
select[disabled],
20222025
textarea[disabled],
20232026
label[aria-disabled=true],
@@ -2027,7 +2030,8 @@ label[aria-disabled=true],
20272030
}
20282031

20292032
label[aria-disabled=true] input[disabled],
2030-
[role=group] > label {
2033+
[role=group] > label,
2034+
[role=group] > legend {
20312035
opacity: 1;
20322036
}
20332037

@@ -2095,15 +2099,17 @@ input::-webkit-input-placeholder,
20952099
textarea::placeholder,
20962100
textarea::-webkit-input-placeholder,
20972101
select:invalid,
2098-
[role=group] > label {
2102+
[role=group] > label,
2103+
[role=group] > legend {
20992104
color: var(--pico-form-element-placeholder-color);
21002105
opacity: 1;
21012106
}
21022107

21032108
input:not([type=checkbox], [type=radio]),
21042109
select,
21052110
textarea,
2106-
[role=group] > label {
2111+
[role=group] > label,
2112+
[role=group] > legend {
21072113
margin-bottom: var(--pico-spacing);
21082114
}
21092115

@@ -3299,6 +3305,10 @@ label > details.dropdown {
32993305
/**
33003306
* Group ([role="group"], [role="search"])
33013307
*/
3308+
fieldset[role=group] > legend {
3309+
float: left;
3310+
}
3311+
33023312
[role=search],
33033313
[role=group] {
33043314
display: inline-flex;
@@ -3311,85 +3321,129 @@ label > details.dropdown {
33113321
transition: box-shadow var(--pico-transition);
33123322
}
33133323
[role=search] > label,
3314-
[role=group] > label {
3324+
[role=search] > legend,
3325+
[role=group] > label,
3326+
[role=group] > legend {
3327+
border-color: var(--pico-secondary-background);
33153328
background-color: var(--pico-secondary-background);
33163329
color: var(--pico-secondary-inverse);
33173330
}
33183331
[role=search] > *,
33193332
[role=search] input:not([type=checkbox], [type=radio]),
33203333
[role=search] select,
3321-
[role=search] label,
3334+
[role=search] > label,
3335+
[role=search] > legend,
3336+
[role=search] > details,
33223337
[role=group] > *,
33233338
[role=group] input:not([type=checkbox], [type=radio]),
33243339
[role=group] select,
3325-
[role=group] label {
3340+
[role=group] > label,
3341+
[role=group] > legend,
3342+
[role=group] > details {
33263343
position: relative;
33273344
flex: 1 1 auto;
33283345
margin-bottom: 0;
33293346
}
33303347
[role=search] > *:not(:first-child),
33313348
[role=search] input:not([type=checkbox], [type=radio]):not(:first-child),
33323349
[role=search] select:not(:first-child),
3333-
[role=search] label:not(:first-child),
3350+
[role=search] > label:not(:first-child),
3351+
[role=search] > legend:not(:first-child),
3352+
[role=search] > details:not(:first-child),
33343353
[role=group] > *:not(:first-child),
33353354
[role=group] input:not([type=checkbox], [type=radio]):not(:first-child),
33363355
[role=group] select:not(:first-child),
3337-
[role=group] label:not(:first-child) {
3356+
[role=group] > label:not(:first-child),
3357+
[role=group] > legend:not(:first-child),
3358+
[role=group] > details:not(:first-child) {
33383359
margin-left: 0;
33393360
border-top-left-radius: 0;
33403361
border-bottom-left-radius: 0;
33413362
}
33423363
[role=search] > *:not(:last-child),
33433364
[role=search] input:not([type=checkbox], [type=radio]):not(:last-child),
33443365
[role=search] select:not(:last-child),
3345-
[role=search] label:not(:last-child),
3366+
[role=search] > label:not(:last-child),
3367+
[role=search] > legend:not(:last-child),
3368+
[role=search] > details:not(:last-child),
33463369
[role=group] > *:not(:last-child),
33473370
[role=group] input:not([type=checkbox], [type=radio]):not(:last-child),
33483371
[role=group] select:not(:last-child),
3349-
[role=group] label:not(:last-child) {
3372+
[role=group] > label:not(:last-child),
3373+
[role=group] > legend:not(:last-child),
3374+
[role=group] > details:not(:last-child) {
33503375
border-top-right-radius: 0;
33513376
border-bottom-right-radius: 0;
33523377
}
33533378
[role=search] > *:focus,
33543379
[role=search] input:not([type=checkbox], [type=radio]):focus,
33553380
[role=search] select:focus,
3356-
[role=search] label:focus,
3381+
[role=search] > label:focus,
3382+
[role=search] > legend:focus,
3383+
[role=search] > details:focus,
33573384
[role=group] > *:focus,
33583385
[role=group] input:not([type=checkbox], [type=radio]):focus,
33593386
[role=group] select:focus,
3360-
[role=group] label:focus {
3387+
[role=group] > label:focus,
3388+
[role=group] > legend:focus,
3389+
[role=group] > details:focus {
33613390
z-index: 2;
33623391
}
3392+
[role=search] > details:not(:first-child) > summary,
3393+
[role=group] > details:not(:first-child) > summary {
3394+
margin-left: 0;
3395+
border-top-left-radius: 0;
3396+
border-bottom-left-radius: 0;
3397+
}
3398+
[role=search] > details:not(:last-child) > summary,
3399+
[role=group] > details:not(:last-child) > summary {
3400+
border-top-right-radius: 0;
3401+
border-bottom-right-radius: 0;
3402+
}
3403+
[role=search] > details > summary,
3404+
[role=search] > details > summary:not([role]),
3405+
[role=group] > details > summary,
3406+
[role=group] > details > summary:not([role]) {
3407+
height: 100% !important;
3408+
}
33633409
[role=search] button:not(:first-child),
33643410
[role=search] [type=submit]:not(:first-child),
33653411
[role=search] [type=reset]:not(:first-child),
33663412
[role=search] [type=button]:not(:first-child),
33673413
[role=search] [role=button]:not(:first-child),
33683414
[role=search] input:not([type=checkbox], [type=radio]):not(:first-child),
33693415
[role=search] select:not(:first-child),
3370-
[role=search] label:not(:first-child),
3416+
[role=search] > label:not(:first-child),
3417+
[role=search] > legend:not(:first-child),
3418+
[role=search] > details > summary:not(:first-child),
33713419
[role=group] button:not(:first-child),
33723420
[role=group] [type=submit]:not(:first-child),
33733421
[role=group] [type=reset]:not(:first-child),
33743422
[role=group] [type=button]:not(:first-child),
33753423
[role=group] [role=button]:not(:first-child),
33763424
[role=group] input:not([type=checkbox], [type=radio]):not(:first-child),
33773425
[role=group] select:not(:first-child),
3378-
[role=group] label:not(:first-child) {
3426+
[role=group] > label:not(:first-child),
3427+
[role=group] > legend:not(:first-child),
3428+
[role=group] > details > summary:not(:first-child) {
33793429
margin-left: calc(var(--pico-border-width) * -1);
33803430
}
33813431
[role=search] button,
33823432
[role=search] [type=submit],
33833433
[role=search] [type=reset],
33843434
[role=search] [type=button],
33853435
[role=search] [role=button],
3386-
[role=search] label,
3436+
[role=search] > label,
3437+
[role=search] > legend,
3438+
[role=search] > details > summary,
33873439
[role=group] button,
33883440
[role=group] [type=submit],
33893441
[role=group] [type=reset],
33903442
[role=group] [type=button],
33913443
[role=group] [role=button],
3392-
[role=group] label {
3444+
[role=group] > label,
3445+
[role=group] > legend,
3446+
[role=group] > details > summary {
33933447
width: auto;
33943448
}
33953449
@supports selector(:has(*)) {
@@ -3399,10 +3453,14 @@ label > details.dropdown {
33993453
}
34003454
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) input:not([type=checkbox], [type=radio]),
34013455
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) select,
3402-
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) label,
3456+
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > label,
3457+
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > legend,
3458+
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > details > summary,
34033459
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) input:not([type=checkbox], [type=radio]),
34043460
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) select,
3405-
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) label {
3461+
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > label,
3462+
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > legend,
3463+
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) > details > summary {
34063464
border-color: transparent;
34073465
}
34083466
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus),
@@ -3414,11 +3472,15 @@ label > details.dropdown {
34143472
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=button],
34153473
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) [role=button],
34163474
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) label,
3475+
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) > legend,
3476+
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) > details > summary,
34173477
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) button,
34183478
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=submit],
34193479
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=button],
34203480
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [role=button],
3421-
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) label {
3481+
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) label,
3482+
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) > legend,
3483+
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) > details > summary {
34223484
--pico-button-box-shadow: 0 0 0 var(--pico-border-width) var(--pico-primary-border);
34233485
--pico-button-hover-box-shadow: 0 0 0 var(--pico-border-width) var(--pico-primary-hover-border);
34243486
}
@@ -3428,12 +3490,16 @@ label > details.dropdown {
34283490
[role=search] [type=button]:focus,
34293491
[role=search] [role=button]:focus,
34303492
[role=search] label:focus,
3493+
[role=search] > legend:focus,
3494+
[role=search] > details > summary:focus,
34313495
[role=group] button:focus,
34323496
[role=group] [type=submit]:focus,
34333497
[role=group] [type=reset]:focus,
34343498
[role=group] [type=button]:focus,
34353499
[role=group] [role=button]:focus,
3436-
[role=group] label:focus {
3500+
[role=group] label:focus,
3501+
[role=group] > legend:focus,
3502+
[role=group] > details > summary:focus {
34373503
box-shadow: none;
34383504
}
34393505
}
@@ -3451,10 +3517,14 @@ label > details.dropdown {
34513517
[dir=rtl] [role=search] input:not([type=checkbox], [type=radio]):not(:first-child),
34523518
[dir=rtl] [role=search] select:not(:first-child),
34533519
[dir=rtl] [role=search] label:not(:first-child),
3520+
[dir=rtl] [role=search] > legend:not(:first-child),
3521+
[dir=rtl] [role=search] > details > summary:not(:first-child),
34543522
[dir=rtl] [role=group] > *:not(:first-child),
34553523
[dir=rtl] [role=group] input:not([type=checkbox], [type=radio]):not(:first-child),
34563524
[dir=rtl] [role=group] select:not(:first-child),
3457-
[dir=rtl] [role=group] label:not(:first-child) {
3525+
[dir=rtl] [role=group] label:not(:first-child),
3526+
[dir=rtl] [role=group] > legend:not(:first-child),
3527+
[dir=rtl] [role=group] > details > summary:not(:first-child) {
34583528
margin-right: 0;
34593529
margin-left: auto;
34603530
border-top-right-radius: 0;
@@ -3466,10 +3536,14 @@ label > details.dropdown {
34663536
[dir=rtl] [role=search] input:not([type=checkbox], [type=radio]):not(:last-child),
34673537
[dir=rtl] [role=search] select:not(:last-child),
34683538
[dir=rtl] [role=search] label:not(:last-child),
3539+
[dir=rtl] [role=search] > legend:not(:last-child),
3540+
[dir=rtl] [role=search] > details > summary:not(:last-child),
34693541
[dir=rtl] [role=group] > *:not(:last-child),
34703542
[dir=rtl] [role=group] input:not([type=checkbox], [type=radio]):not(:last-child),
34713543
[dir=rtl] [role=group] select:not(:last-child),
3472-
[dir=rtl] [role=group] label:not(:last-child) {
3544+
[dir=rtl] [role=group] label:not(:last-child),
3545+
[dir=rtl] [role=group] > legend:not(:last-child),
3546+
[dir=rtl] [role=group] > details > summary:not(:last-child) {
34733547
border-top-right-radius: var(--pico-border-radius);
34743548
border-top-left-radius: 0;
34753549
border-bottom-right-radius: var(--pico-border-radius);
@@ -3482,7 +3556,9 @@ label > details.dropdown {
34823556
[dir=rtl] [role=button]:not(:first-child),
34833557
[dir=rtl] input:not([type=checkbox], [type=radio]):not(:first-child),
34843558
[dir=rtl] select:not(:first-child),
3485-
[dir=rtl] label:not(:first-child) {
3559+
[dir=rtl] label:not(:first-child),
3560+
[dir=rtl] > legend:not(:first-child),
3561+
[dir=rtl] > details > summary:not(:first-child) {
34863562
margin-right: calc(var(--pico-border-width) * -1);
34873563
margin-left: auto;
34883564
}

0 commit comments

Comments
 (0)