In letzter Zeit habe ich immer mehr Entwickler gesehen, die mithilfe von Tricks Toggle-Zustände mit reinem CSS erstellen konnten. Dadurch können Sie das JavaScript überspringen, ohne die Interaktion zu beeinträchtigen. Wie funktioniert das? Ist das eine akzeptable Praxis?
Heute untersuchen wir zwei verschiedene Methoden für die Verwendung eines Kontrollkästchens, um ein Klickereignis zu erstellen, das mit gutem altem HTML und CSS zwischen zwei Bildern wechselt. Zum Abschluss noch eine kurze Diskussion über Semantik und die Vor- und Nachteile dieser Technik.
Wie eine Katze häuten
Sie erstellen im Wesentlichen ein Kontrollkästchen in HTML, um es auszublenden und die Funktionalität zu stehlen.Bei jedem CSS-Trick gibt es immer eine Handvoll verschiedene Möglichkeiten, um die Aufgabe zu erfüllen, die Sie anstreben. Was wir heute hier tun, ist zu lernen, wie man Kontrollkästchen verwendet, um zwei Zustände zu erstellen, die zwischen HTML und CSS umgeschaltet werden können. In Anbetracht dieses Ziels können wir leicht mindestens zwei Wege finden, um dieses Ziel zu erreichen. Selbst innerhalb dieser beiden Hauptstrategien werden Sie feststellen, dass es mehrere Wege gibt, die wir nehmen können.
Beide Methoden beinhalten einige fragwürdige CSS-Tricks. Sie erstellen im Wesentlichen ein Kontrollkästchen in HTML, um es auszublenden und die Funktionalität zu stehlen. Die erste Methode dehnt das Ankreuzfeld einfach auf die volle Größe des Bereichs aus, den Sie anklickbar machen möchten, und verwendet keine Beschriftung.
Die zweite Methode nutzt die interessante Funktionalität von Labels, die einem Kontrollkästchen zugeordnet sind. Selbst wenn Sie das Kontrollkästchen selbst ausblenden, kann das Etikett tatsächlich gestaltet, positioniert und angeklickt werden, um den Umschalter zu aktivieren. Dies gibt uns ein völlig flexibles Element, mit dem wir arbeiten können, das zwei mögliche Zustände hat.
Lasst uns eintauchen und jede dieser Methoden genauer betrachten.
Methode 1
Der erste Weg, dieses Experiment anzugreifen, besteht darin, unser Kontrollkästchen dazu zu bringen, die gesamte Größe unseres Objekts aufzufressen und es dann zu verstecken. Um dies zu erreichen, ist alles, was Sie technisch benötigen, ein div, das ein Kontrollkästchen mit einer angewendeten Klasse enthält. Wenn Sie weiter gehen möchten, können Sie weitere Attribute wie "Name" hinzufügen. Wir werden auch ein Bild einfügen, damit wir etwas umschalten können.