--- title: ':checked' slug: 'Web/CSS/:checked' tags: - CSS - Layout - Pseudo-class - Reference - Web translation_of: 'Web/CSS/:checked' ---
La pseudo-class CSS :checked
representa qualsevol radio (<input type="radio">
), checkbox (<input type="checkbox">
) o option ({{HTMLElement("option")}} en un element {{HTMLElement("select")}}) que està marcat o commutat a un estat on (activat).
/* Matches any checked/selected radio, checkbox, or option */ :checked { margin-left: 25px; border: 1px solid blue; }
L'usuari pot activar aquest estat marcant/seleccionant un element o desactivar-ho desmarcant/deseleccionant l'element.
Nota: Com que els navegadors sovint tracten <option>
s com a elements reemplaçats, el grau en què poden ser dissenyats amb la pseudo-class :checked
varia d'un navegador a un altre.
<div> <input type="radio" name="my-input" id="yes"> <label for="yes">Yes</label> <input type="radio" name="my-input" id="no"> <label for="yes">No</label> </div> <div> <input type="checkbox" name="my-checkbox" id="opt-in"> <label for="opt-in">Check me!</label> </div> <select name="my-select" id="fruit"> <option value="opt1">Apples</option> <option value="opt2">Grapes</option> <option value="opt3">Pears</option> </select>
div, select { margin: 8px; } /* Labels for checked inputs */ input:checked + label { color: red; } /* Radio element, when checked */ input[type="radio"]:checked { box-shadow: 0 0 0 3px orange; } /* Checkbox element, when checked */ input[type="checkbox"]:checked { box-shadow: 0 0 0 3px hotpink; } /* Option elements, when selected */ option:checked { box-shadow: 0 0 0 3px lime; color: red; }
{{EmbedLiveSample("Basic_example")}}
En aquest exemple s'utilitza la pseudo-class :checked
per permetre a l'usuari que alterni el contingut en funció de l'estat d'una casella de selecció (checkbox), tot sense utilitzar JavaScript.
<input type="checkbox" id="expand-toggle" /> <table> <thead> <tr><th>Column #1</th><th>Column #2</th><th>Column #3</th></tr> </thead> <tbody> <tr class="expandable"><td>[more text]</td><td>[more text]</td><td>[more text]</td></tr> <tr><td>[cell text]</td><td>[cell text]</td><td>[cell text]</td></tr> <tr><td>[cell text]</td><td>[cell text]</td><td>[cell text]</td></tr> <tr class="expandable"><td>[more text]</td><td>[more text]</td><td>[more text]</td></tr> <tr class="expandable"><td>[more text]</td><td>[more text]</td><td>[more text]</td></tr> </tbody> </table> <label for="expand-toggle" id="expand-btn">Toggle hidden rows</label>
/* Oculta la casella de selecció (checkbox) */
#expand-toggle {
display: none;
}
/* Oculta el contingut expandible per defecte */
.expandable {
visibility: collapse;
background: #ddd;
}
/* Estil del botó */
#expand-btn {
display: inline-block;
margin-top: 12px;
padding: 5px 11px;
background-color: #ff7;
border: 1px solid;
border-radius: 3px;
}
/* Mostra el contingut ocult quan es marca la casella de selecció */
#expand-toggle:checked ~ * .expandable {
visibility: visible;
}
/* Estil del botó quan està marcada la casella de selecció */
#expand-toggle:checked ~ #expand-btn {
background-color: #ccc;
}
{{EmbedLiveSample("Toggling_elements_with_a_hidden_checkbox", "auto", 220)}}
Podeu utilitzar la pseudo-class :checked
per construir una galeria d'imatges amb imatges de grandària completa que només es mostrin quan l'usuari faci clic a una miniatura. Vegeu aquesta demostració com un possible exemple.
:hover
i sense caixes de ràdio (radioboxes) ocultes, vegeu aquesta demostració, presa de la pàgina de referència :hover.Especificació | Estat | Comentari |
---|---|---|
{{ SpecName('HTML WHATWG', '#selector-checked', ':checked') }} | {{ Spec2('HTML WHATWG') }} | Sense canvis. |
{{ SpecName('HTML5 W3C', '#selector-checked', ':checked') }} | {{ Spec2('HTML5 W3C') }} | Defineix la semàntica respecte HTML. |
{{ SpecName('CSS4 Selectors', '#checked', ':checked') }} | {{ Spec2('CSS4 Selectors') }} | Sense canvis. |
{{ SpecName('CSS3 Basic UI', '#pseudo-checked', ':checked') }} | {{ Spec2('CSS3 Basic UI') }} | Enllaç a Selectors Level 3. |
{{ SpecName('CSS3 Selectors', '#checked', ':checked') }} | {{ Spec2('CSS3 Selectors') }} | Defineix la pseudo-classe, però no la semàntica associada |
{{ CompatibilityTable() }}
Descripció | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Suport bàsic | 1.0 | {{CompatVersionUnknown}} | {{ CompatGeckoDesktop(1.0) }} | 9.0 | 9.0 | 3.1 |
Descripció | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suport bàsic | 2.1 | {{CompatVersionUnknown}} | {{ CompatGeckoMobile(1.0) }} | 9.0 | 9.5 | 3.1 |