Das
::after Pseudo-Element erlaubt es dir, Content
nach dem Button einzufügen. Zum Beispiel einen Text.
Mit CSS ist es nicht möglich (nur mit hässlichen Workarounds), nach einem Klick des Buttons die Hintergrundfarbe zu verändern. Für so etwas wirst du JavaScript benutzen müssen.
Ohne dir zu Nahe treten zu wollen, aber ich glaube, dass du in Thema CSS (und ich schätze daher auch JavaScript) noch ein Anfänger bist. Das mache ich unter anderem daran fest, dass du
#button schreibst, also einem Button die ID "button" zugeordnet hast, aber auch an deiner Frage die du gestellt hast.
Ich halte es daher noch nicht für Sinnvoll, dich direkt auf JavaScript zu stürzen. Wenn du unbedingt diese Hintergrundfarbveränderung brauchst, würde ich an deiner Stelle im Internet nach fertigen Snippets schauen, die du dir einfach rauskopieren kannst oder nimm einfach das hier erstmal:
HTML:
<button id="button" onclick="this.style.backgroundColor = 'red';">
Dein Button
</button>
Hier gibt es im Übrigen eine Übersicht der wichtigsten Pseudo-Klassen und -Elemente:
A CSS pseudo-class is a keyword that can be added to a selector, to define a style for a special state of an element.
www.w3schools.com