HTML, CSS Bild anklicken und Text erscheint?

3 Antworten

css

.hidden { display: none; }

html

<img id="bild" src="//placehold.it/100x100">

<div id="text" class="hidden">
  Dein Text
</div>

<script>
  document.getElementById("bild").addEventListener("click", function() {
    document.getElementById("text").classList.toggle("hidden");
  });
</script>
Dupliziert aber Duplikate funktionieren nicht?

Hey ich hab das mal so ausprobiert und wollte es mehrfach untereinander einsetzen mit verschiedenen Bildern, das hat dazu geführt dass nur das erste Bild interaktiv ist. woran könnte das denn liegen, hab den block einfach kopiert und noch zwei mal eingefügt.

LG anon

Ich würde da mit Pseudo-Klassen arbeiten. Das Element musst du mit display: none verstecken.

An deiner Stelle würde ich den Text anzeigen lassen, sobald man mit der Maus darüber fährt. Dafür kannst du die Pseudo-Klasse hover benutzen und änderst dann den display Wert.

Soll es beim klicken bleiben, kannst du active benutzen. Das wird eigentlich für Links verwendet. Alle mir bekannten Alternativen würden allerdings Javascript enthalten.

Woher ich das weiß:Hobby – Tenorhorn (10 Jahre), Klavier (7 Jahre), Gitarre (5 Jahre)