Een aangeklikte knop in CSS opmaken

Ik heb de website van W3 schools W3Schoolsbekeken, waar het opmaken van knoppen met CSS wordt uitgelegd. Ik moet een knopstijl opgeven wanneer erop wordt geklikt. Wat is hiervoor de pseudo-klasse selector? bijv. de zweefknop is:

.button:hover{ 
}

Antwoord 1, autoriteit 100%

Deze knop wordt aanvankelijk geel weergegeven. Bij hover wordt het oranje. Als je erop klikt, wordt het rood. Ik gebruikte :hover en :focus om de stijl aan te passen.
(De :active selector wordt meestal gebruikt voor links (d.w.z. <a>tags))

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>

Antwoord 2, autoriteit 38%

Als je wilt dat de knop een andere stijl heeft terwijl de muis wordt ingedrukt, kun je de pseudo-klasse :activegebruiken.

.button:active {
}

Als je daarentegen wilt dat de stijl blijft staan nadat je erop hebt geklikt, moet je javascript gebruiken.


Antwoord 3, autoriteit 31%

Er zijn drie statussen van de knop

  • Normaal: u kunt op deze manier button
  • selecteren

  • Hover: u kunt op deze manier button:hover
  • . selecteren

  • Ingedrukt/geklikt: u kunt op deze manier button:active
  • . selecteren

Normaal:

.button
 {
     //your css
 }

Actief

.button:active
{
        //your css
}

Hover

.button:hover
{
        //your css
}

SNIPPET:

Gebruik :activeom de actieve status van de knop te stylen.

button:active{
   background-color:red;
}
<button>Click Me</button>

Antwoord 4, autoriteit 5%

Helaas is er geen :click pseudo-selector. Als u de stijl bij klikken wilt wijzigen, moet u JQuery/Javascript gebruiken. Het is zeker beter dan de “hack” voor pure HTML / CSS. Maar als je erop staat…

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>

Antwoord 5

button:hover is precies wanneer u de cursor over de knop beweegt.
Probeer in plaats daarvan button:active…werkt ook voor andere elementen

button:active{
  color: red;
}

Other episodes