Theme: Add picocss v1.5.11
This commit is contained in:
		
					parent
					
						
							
								fe6fab6f1e
							
						
					
				
			
			
				commit
				
					
						74cdb157fd
					
				
			
		
					 37 changed files with 3712 additions and 0 deletions
				
			
		
							
								
								
									
										352
									
								
								themes/ccchh/assets/pico-1.5.11/scss/content/_form.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										352
									
								
								themes/ccchh/assets/pico-1.5.11/scss/content/_form.scss
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,352 @@ | |||
| /** | ||||
|  * Form elements | ||||
|  */ | ||||
| 
 | ||||
| // Reboot based on : | ||||
| // - normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css | ||||
| // - sanitize.css v13.0.0 | CC0 1.0 Universal | github.com/csstools/sanitize.css | ||||
| // –––––––––––––––––––– | ||||
| 
 | ||||
| // 1. Change the font styles in all browsers | ||||
| // 2. Remove the margin in Firefox and Safari | ||||
| input, | ||||
| optgroup, | ||||
| select, | ||||
| textarea { | ||||
|   margin: 0; // 2 | ||||
|   font-size: 1rem; // 1 | ||||
|   line-height: var(--line-height); // 1 | ||||
|   font-family: inherit; // 1 | ||||
|   letter-spacing: inherit; // 2 | ||||
| } | ||||
| 
 | ||||
| // Show the overflow in IE. | ||||
| input { | ||||
|   overflow: visible; | ||||
| } | ||||
| 
 | ||||
| // Remove the inheritance of text transform in Edge, Firefox, and IE | ||||
| select { | ||||
|   text-transform: none; | ||||
| } | ||||
| 
 | ||||
| // 1. Correct the text wrapping in Edge and IE | ||||
| // 2. Correct the color inheritance from `fieldset` elements in IE | ||||
| // 3. Remove the padding so developers are not caught out when they zero out | ||||
| // `fieldset` elements in all browsers | ||||
| legend { | ||||
|   max-width: 100%; // 1 | ||||
|   padding: 0; // 3 | ||||
|   color: inherit; // 2 | ||||
|   white-space: normal; // 1 | ||||
| } | ||||
| 
 | ||||
| // 1. Remove the default vertical scrollbar in IE | ||||
| textarea { | ||||
|   overflow: auto; // 1 | ||||
| } | ||||
| 
 | ||||
| // Remove the padding in IE 10 | ||||
| [type="checkbox"], | ||||
| [type="radio"] { | ||||
|   padding: 0; | ||||
| } | ||||
| 
 | ||||
| // Correct the cursor style of increment and decrement buttons in Safari | ||||
| ::-webkit-inner-spin-button, | ||||
| ::-webkit-outer-spin-button { | ||||
|   height: auto; | ||||
| } | ||||
| 
 | ||||
| // 1. Correct the odd appearance in Chrome and Safari | ||||
| // 2. Correct the outline style in Safari | ||||
| [type="search"] { | ||||
|   -webkit-appearance: textfield; // 1 | ||||
|   outline-offset: -2px; // 2 | ||||
| } | ||||
| 
 | ||||
| // Remove the inner padding in Chrome and Safari on macOS | ||||
| [type="search"]::-webkit-search-decoration { | ||||
|   -webkit-appearance: none; | ||||
| } | ||||
| 
 | ||||
| // 1. Correct the inability to style clickable types in iOS and Safari | ||||
| // 2. Change font properties to `inherit` in Safari | ||||
| ::-webkit-file-upload-button { | ||||
|   -webkit-appearance: button; // 1 | ||||
|   font: inherit; // 2 | ||||
| } | ||||
| 
 | ||||
| // Remove the inner border and padding of focus outlines in Firefox | ||||
| ::-moz-focus-inner { | ||||
|   padding: 0; | ||||
|   border-style: none; | ||||
| } | ||||
| 
 | ||||
| //  Remove the focus outline in Firefox | ||||
| :-moz-focusring { | ||||
|   outline: none; | ||||
| } | ||||
| 
 | ||||
| // Remove the additional :invalid styles in Firefox | ||||
| :-moz-ui-invalid { | ||||
|   box-shadow: none; | ||||
| } | ||||
| 
 | ||||
| // Change the inconsistent appearance in IE (opinionated) | ||||
| ::-ms-expand { | ||||
|   display: none; | ||||
| } | ||||
| 
 | ||||
| // Remove the border and padding in all browsers (opinionated) | ||||
| [type="file"], | ||||
| [type="range"] { | ||||
|   padding: 0; | ||||
|   border-width: 0; | ||||
| } | ||||
| 
 | ||||
| // Pico | ||||
| // –––––––––––––––––––– | ||||
| 
 | ||||
| // Force height for alternatives input types | ||||
| input:not([type="checkbox"], [type="radio"], [type="range"]) { | ||||
|   height: calc( | ||||
|     (1rem * var(--line-height)) + (var(--form-element-spacing-vertical) * 2) + | ||||
|       (var(--border-width) * 2) | ||||
|   ); | ||||
| } | ||||
| 
 | ||||
| // Fieldset | ||||
| fieldset { | ||||
|   margin: 0; | ||||
|   margin-bottom: var(--spacing); | ||||
|   padding: 0; | ||||
|   border: 0; | ||||
| } | ||||
| 
 | ||||
| // Label & legend | ||||
| label, | ||||
| fieldset legend { | ||||
|   display: block; | ||||
|   margin-bottom: calc(var(--spacing) * 0.25); | ||||
|   font-weight: var(--form-label-font-weight, var(--font-weight)); | ||||
| } | ||||
| 
 | ||||
| // Blocks, 100% | ||||
| input:not([type="checkbox"], [type="radio"]), | ||||
| select, | ||||
| textarea { | ||||
|   width: 100%; | ||||
| } | ||||
| 
 | ||||
| // Reset appearance (Not Checkboxes, Radios, Range and File) | ||||
| input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]), | ||||
| select, | ||||
| textarea { | ||||
|   appearance: none; | ||||
|   padding: var(--form-element-spacing-vertical) | ||||
|     var(--form-element-spacing-horizontal); | ||||
| } | ||||
| 
 | ||||
| // Commons styles | ||||
| input, | ||||
| select, | ||||
| textarea { | ||||
|   --background-color: var(--form-element-background-color); | ||||
|   --border-color: var(--form-element-border-color); | ||||
|   --color: var(--form-element-color); | ||||
|   --box-shadow: none; | ||||
|   border: var(--border-width) solid var(--border-color); | ||||
|   border-radius: var(--border-radius); | ||||
|   outline: none; | ||||
|   background-color: var(--background-color); | ||||
|   box-shadow: var(--box-shadow); | ||||
|   color: var(--color); | ||||
|   font-weight: var(--font-weight); | ||||
| 
 | ||||
|   @if $enable-transitions { | ||||
|     transition: background-color var(--transition), | ||||
|       border-color var(--transition), color var(--transition), | ||||
|       box-shadow var(--transition); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Active & Focus | ||||
| input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [readonly]), | ||||
| :where(select, textarea) { | ||||
|   &:is(:active, :focus) { | ||||
|     --background-color: var(--form-element-active-background-color); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Active & Focus | ||||
| input:not([type="submit"], [type="button"], [type="reset"], [role="switch"], [readonly]), | ||||
| :where(select, textarea) { | ||||
|   &:is(:active, :focus) { | ||||
|     --border-color: var(--form-element-active-border-color); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Focus | ||||
| input:not([type="submit"], [type="button"], [type="reset"], [type="range"], [type="file"], [readonly]), | ||||
| select, | ||||
| textarea { | ||||
|   &:focus { | ||||
|     --box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Disabled | ||||
| input:not([type="submit"], [type="button"], [type="reset"])[disabled], | ||||
| select[disabled], | ||||
| textarea[disabled], | ||||
| :where(fieldset[disabled]) :is(input:not([type="submit"], [type="button"], [type="reset"]), select, textarea) { | ||||
|   --background-color: var(--form-element-disabled-background-color); | ||||
|   --border-color: var(--form-element-disabled-border-color); | ||||
|   opacity: var(--form-element-disabled-opacity); | ||||
|   pointer-events: none; | ||||
| } | ||||
| 
 | ||||
| // Aria-invalid | ||||
| :where(input, select, textarea) { | ||||
|   &:not([type="checkbox"], [type="radio"], [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) { | ||||
|     &[aria-invalid] { | ||||
|       @if $enable-important { | ||||
|         padding-right: calc( | ||||
|           var(--form-element-spacing-horizontal) + 1.5rem | ||||
|         ) !important; | ||||
|         padding-left: var(--form-element-spacing-horizontal); | ||||
|         padding-inline-start: var(--form-element-spacing-horizontal) !important; | ||||
|         padding-inline-end: calc( | ||||
|           var(--form-element-spacing-horizontal) + 1.5rem | ||||
|         ) !important; | ||||
|       } | ||||
|       @else { | ||||
|         padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem); | ||||
|         padding-left: var(--form-element-spacing-horizontal); | ||||
|         padding-inline-start: var(--form-element-spacing-horizontal); | ||||
|         padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem); | ||||
|       } | ||||
|       background-position: center right 0.75rem; | ||||
|       background-size: 1rem auto; | ||||
|       background-repeat: no-repeat; | ||||
|     } | ||||
| 
 | ||||
|     &[aria-invalid="false"] { | ||||
|       background-image: var(--icon-valid); | ||||
|     } | ||||
| 
 | ||||
|     &[aria-invalid="true"] { | ||||
|       background-image: var(--icon-invalid); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &[aria-invalid="false"] { | ||||
|     --border-color: var(--form-element-valid-border-color); | ||||
| 
 | ||||
|     &:is(:active, :focus) { | ||||
|       @if $enable-important { | ||||
|         --border-color: var(--form-element-valid-active-border-color) !important; | ||||
|         --box-shadow: 0 0 0 var(--outline-width) var(--form-element-valid-focus-color) !important; | ||||
|       } | ||||
|       @else { | ||||
|         --border-color: var(--form-element-valid-active-border-color); | ||||
|         --box-shadow: 0 0 0 var(--outline-width) var(--form-element-valid-focus-color); | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &[aria-invalid="true"] { | ||||
|     --border-color: var(--form-element-invalid-border-color); | ||||
| 
 | ||||
|     &:is(:active, :focus) { | ||||
|       @if $enable-important { | ||||
|         --border-color: var(--form-element-invalid-active-border-color) !important; | ||||
|         --box-shadow: 0 0 0 var(--outline-width) var(--form-element-invalid-focus-color) !important; | ||||
|       } | ||||
|       @else { | ||||
|         --border-color: var(--form-element-invalid-active-border-color); | ||||
|         --box-shadow: 0 0 0 var(--outline-width) var(--form-element-invalid-focus-color); | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| [dir="rtl"] { | ||||
|   :where(input, select, textarea) { | ||||
|     &:not([type="checkbox"], [type="radio"]) { | ||||
|       &:is([aria-invalid], [aria-invalid="true"], [aria-invalid="false"] ){ | ||||
|         background-position: center left 0.75rem; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Placeholder | ||||
| input::placeholder, | ||||
| input::-webkit-input-placeholder, | ||||
| textarea::placeholder, | ||||
| textarea::-webkit-input-placeholder, | ||||
| select:invalid { | ||||
|   color: var(--form-element-placeholder-color); | ||||
|   opacity: 1; | ||||
| } | ||||
| 
 | ||||
| // Margin bottom (Not Checkboxes and Radios) | ||||
| input:not([type="checkbox"], [type="radio"]), | ||||
| select, | ||||
| textarea { | ||||
|   margin-bottom: var(--spacing); | ||||
| } | ||||
| 
 | ||||
| // Select | ||||
| select { | ||||
|   // Unstyle the caret on `<select>`s in IE10+. | ||||
|   &::-ms-expand { | ||||
|     border: 0; | ||||
|     background-color: transparent; | ||||
|   } | ||||
| 
 | ||||
|   &:not([multiple], [size]) { | ||||
|     padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem); | ||||
|     padding-left: var(--form-element-spacing-horizontal); | ||||
|     padding-inline-start: var(--form-element-spacing-horizontal); | ||||
|     padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem); | ||||
|     background-image: var(--icon-chevron); | ||||
|     background-position: center right 0.75rem; | ||||
|     background-size: 1rem auto; | ||||
|     background-repeat: no-repeat; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| [dir="rtl"] { | ||||
|   select { | ||||
|     &:not([multiple], [size]) { | ||||
|       background-position: center left 0.75rem; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Helper | ||||
| $inputs: "input, select, textarea"; | ||||
| 
 | ||||
| @if ($enable-classes and $enable-grid) { | ||||
|   $inputs: $inputs + ", .grid"; | ||||
| } | ||||
| 
 | ||||
| :where(#{$inputs}) { | ||||
|   + small { | ||||
|     display: block; | ||||
|     width: 100%; | ||||
|     margin-top: calc(var(--spacing) * -0.75); | ||||
|     margin-bottom: var(--spacing); | ||||
|     color: var(--muted-color); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| // Styles for Input inside a label | ||||
| label { | ||||
|   > :where(input, select, textarea) { | ||||
|     margin-top: calc(var(--spacing) * 0.25); | ||||
|   } | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue