J'ai consulté le site Web des écoles W3 W3Schools qui explique les boutons de style avec CSS. J'ai besoin de spécifier un style de bouton quand on clique dessus. Quel est le sélecteur de pseudo-classe pour cela? par exemple. le bouton de survol est:
.button:hover{
}
Ce bouton apparaîtra jaune au début. En vol stationnaire, il deviendra orange. Lorsque vous cliquez dessus, il deviendra rouge. J'ai utilisé: hover et: focus pour adapter le style . (Le sélecteur: actif est généralement utilisé pour les liens (tags <a>
))
button{
background-color:yellow;
}
button:hover{background-color:orange;}
button:focus{background-color:red;}
a {
color: orange;
}
a.button{
color:green;
text-decoration: none;
}
a:visited {
color: purple;
}
a:active {
color: blue;
}
<button>
Hover and Click!
</button>
<br><br>
<a href="#">Hello</a><br><br>
<a class="button" href="#">Bye</a>
Si vous souhaitez simplement que le bouton ait un style différent alors que la souris est enfoncée, vous pouvez utiliser la pseudo-classe :active
.
.button:active {
}
Si par contre vous voulez que le style reste après que vous ayez cliqué, vous devrez utiliser javascript.
Il y a trois états de bouton
button
button:hover
button:active
Ordinaire:
.button
{
//your css
}
Actif
.button:active
{
//your css
}
Survolez
.button:hover
{
//your css
}
SNIPPET:
Utilisez :active
pour styler l'état actif du bouton.
button:active{
background-color:red;
}
<button>Click Me</button>
bouton: le survol est juste au moment où vous déplacez le curseur sur le bouton.
Try bouton: active à la place ... fonctionnera également pour d'autres éléments
button:active{
color: red;
}
Malheureusement, il n'y a pas: cliquez sur le pseudo sélecteur. Si vous souhaitez modifier le style au clic, vous devez utiliser Jquery/Javascript. C'est certainement mieux que le "hack" pour du HTML/CSS pur. Mais si vous insistez ...
input {
display: none;
}
span {
padding: 20px;
font-family: sans-serif;
}
input:checked + span {
background: #444;
color: #fff;
}
<label for="input">
<input id="input" type="radio" />
<span>NO JS styling</span>
</label>
Ou, si vous préférez, vous pouvez changer le style:
input {
display: none;
}
span {
padding: 20px;
font-family: sans-serif;
}
input:checked + span {
background: #444;
color: #fff;
}
<label for="input">
<input id="input" type="checkbox" />
<span>NO JS styling</span>
</label>