mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	Remove fomantic checkbox module (#30162)
CSS is pretty slim already and the `.ui.toggle.checkbox` sliders on admin page also still work. The only necessary JS is the one that links `input` and `label` so that it can be toggled via label. All checkboxes except the markdown ones render at `--checkbox-size: 16px` now. <img width="174" alt="Screenshot 2024-03-28 at 22 15 10" src="https://github.com/go-gitea/gitea/assets/115237/3455c1bb-166b-47e4-9847-2d20dd1f04db"> <img width="499" alt="Screenshot 2024-03-28 at 21 00 07" src="https://github.com/go-gitea/gitea/assets/115237/412be2b3-d5a0-478a-b17b-43e6bc12e8ce"> <img width="83" alt="Screenshot 2024-03-28 at 22 14 34" src="https://github.com/go-gitea/gitea/assets/115237/d8c89838-a420-4723-8c49-89405bb39474"> --------- Co-authored-by: delvh <dev.lh@web.de>
This commit is contained in:
		
							
								
								
									
										120
									
								
								web_src/css/modules/checkbox.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								web_src/css/modules/checkbox.css
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,120 @@ | ||||
| /* based on Fomantic UI checkbox module, with just the parts extracted that we use. If you find any | ||||
|    unused rules here after refactoring, please remove them. */ | ||||
|  | ||||
| input[type="checkbox"], | ||||
| input[type="radio"] { | ||||
|   width: var(--checkbox-size); | ||||
|   height: var(--checkbox-size); | ||||
| } | ||||
|  | ||||
| .ui.checkbox { | ||||
|   position: relative; | ||||
|   display: inline-block; | ||||
|   vertical-align: baseline; | ||||
|   min-height: var(--checkbox-size); | ||||
|   line-height: var(--checkbox-size); | ||||
|   min-width: var(--checkbox-size); | ||||
|   padding: 1px; | ||||
| } | ||||
|  | ||||
| .ui.checkbox input[type="checkbox"], | ||||
| .ui.checkbox input[type="radio"] { | ||||
|   position: absolute; | ||||
|   top: 0; | ||||
|   left: 0; | ||||
|   width: var(--checkbox-size); | ||||
|   height: var(--checkbox-size); | ||||
| } | ||||
|  | ||||
| .ui.checkbox input[type="checkbox"]:enabled, | ||||
| .ui.checkbox input[type="radio"]:enabled, | ||||
| .ui.checkbox label:enabled { | ||||
|   cursor: pointer; | ||||
| } | ||||
|  | ||||
| .ui.checkbox label { | ||||
|   cursor: auto; | ||||
|   position: relative; | ||||
|   display: block; | ||||
|   user-select: none; | ||||
| } | ||||
|  | ||||
| .ui.checkbox label, | ||||
| .ui.radio.checkbox label { | ||||
|   padding-left: 1.85714em; | ||||
| } | ||||
|  | ||||
| .ui.checkbox + label { | ||||
|   vertical-align: middle; | ||||
| } | ||||
|  | ||||
| .ui.disabled.checkbox label, | ||||
| .ui.checkbox input[disabled] ~ label { | ||||
|   cursor: default !important; | ||||
|   opacity: 0.5; | ||||
|   pointer-events: none; | ||||
| } | ||||
|  | ||||
| .ui.radio.checkbox { | ||||
|   min-height: var(--checkbox-size); | ||||
| } | ||||
|  | ||||
| /* "switch" styled checkbox */ | ||||
|  | ||||
| .ui.toggle.checkbox { | ||||
|   min-height: 1.5rem; | ||||
| } | ||||
| .ui.toggle.checkbox input { | ||||
|   width: 3.5rem; | ||||
|   height: 1.5rem; | ||||
|   opacity: 0; | ||||
|   z-index: 3; | ||||
| } | ||||
| .ui.toggle.checkbox label { | ||||
|   min-height: 1.5rem; | ||||
|   padding-left: 4.5rem; | ||||
|   padding-top: 0.15em; | ||||
| } | ||||
| .ui.toggle.checkbox label::before { | ||||
|   display: block; | ||||
|   position: absolute; | ||||
|   content: ""; | ||||
|   z-index: 1; | ||||
|   top: 0; | ||||
|   width: 3.5rem; | ||||
|   height: 1.5rem; | ||||
|   border-radius: 500rem; | ||||
|   left: 0; | ||||
| } | ||||
| .ui.toggle.checkbox label::after { | ||||
|   background: var(--color-white); | ||||
|   position: absolute; | ||||
|   content: ""; | ||||
|   opacity: 1; | ||||
|   z-index: 2; | ||||
|   width: 1.5rem; | ||||
|   height: 1.5rem; | ||||
|   top: 0; | ||||
|   left: 0; | ||||
|   border-radius: 500rem; | ||||
|   transition: background 0.3s ease, left 0.3s ease; | ||||
| } | ||||
| .ui.toggle.checkbox input ~ label::after { | ||||
|   left: -0.05rem; | ||||
| } | ||||
| .ui.toggle.checkbox input:checked ~ label::after { | ||||
|   left: 2.15rem; | ||||
| } | ||||
| .ui.toggle.checkbox input:focus ~ label::before, | ||||
| .ui.toggle.checkbox label::before { | ||||
|   background: var(--color-input-toggle-background); | ||||
| } | ||||
| .ui.toggle.checkbox label, | ||||
| .ui.toggle.checkbox input:checked ~ label, | ||||
| .ui.toggle.checkbox input:focus:checked ~ label { | ||||
|   color: var(--color-text) !important; | ||||
| } | ||||
| .ui.toggle.checkbox input:checked ~ label::before, | ||||
| .ui.toggle.checkbox input:focus:checked ~ label::before { | ||||
|   background: var(--color-primary) !important; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user