HTML <blink> und <marquee> (2020)
(danq.me)- Private Homepages der 1990er nutzten häufig blinkenden und scrollenden Text, um „neueste Updates“ hervorzuheben; die beiden Tags sind heute Spuren einer Webkultur, der man nur noch selten begegnet
<blink>ist ein Tag, der 1995 in Netscape Navigator 2.0 aufgenommen wurde. Lou Montulli wird oft als Ideengeber genannt, stellte jedoch klar, dass er den eigentlichen Implementierungscode nicht geschrieben hat- Im selben Jahr führte Microsoft Internet Explorer 2.0
<marquee>ein und bot damit attributbasierte Effekte, mit denen sich Scrollrichtung, Geschwindigkeit, Wiederholung und Hin-und-her-Bewegung steuern ließen - Wenn man die beiden Tags verschachtelte, sah man in Netscape Blinken und in IE Scrollen; auch in Browsern ohne Unterstützung blieb der Text selbst lesbar
<blink>ist praktisch verschwunden, und<marquee>ist zwar in einigen modernen Browsern noch vorhanden, wirkt auf realen Websites aber eher wie digitale Nostalgie, die Barrierefreiheit und Usability beeinträchtigt
Der Wettstreit um visuelle Effekte, den Browser der 1990er auslösten
<blink>und<marquee>waren typische Webdesign-Elemente der 1990er, um auf privaten Homepages Aufmerksamkeit zu erregen- Selbst Macromedia Dreamweaver scheint die Praxis,
<blink>in<marquee>einzupacken, wie ein Antipattern behandelt zu haben -
<blink>: vom Scherz zum weit verbreiteten Tag- Die Erfindung von
<blink>wird meist Lou Montulli zugeschrieben, doch er erklärte, den endgültigen Implementierungscode nicht selbst geschrieben zu haben - Montulli hatte vor seinem Wechsel zu Netscape im Jahr 1994 den textbasierten Browser Lynx entwickelt
- Überliefert ist die Anekdote, dass Netscape-Ingenieure visuelle Effekte vorschlugen und Montulli sagte, diese würden in Lynx nicht funktionieren; der auffälligste Effekt, der in beiden Browsern möglich sei, sei scherzhaft, Text ein- und auszuschalten
- Später fügte ein anderer, namentlich nicht bekannter Ingenieur
<blink>in einer nächtlichen Arbeitssitzung hinzu - Netscape Navigator 2.0 nahm 1995 Unterstützung für
<blink>auf; zur selben Zeit enthielt er auch animated GIFs und eine frühe Form von JavaScript - Die Nutzung hatte eine einfache Struktur ohne Attribute, etwa
<BLINK>This is my blinking text!</BLINK> - Als zwei Jahre später die HTML4-Empfehlung erschien, wurde
<blink>scherzhaft dokumentiert, im Web der späten 1990er wurde es jedoch häufig verwendet - Es wurde etwa für Überschriften wie „latest updates“ auf privaten Homepages oder zum Einrahmen ganzer Blöcke genutzt; die Atmosphäre dieser Zeit lässt sich in Cameron’s World erleben
- Die Erfindung von
-
<marquee>: scrollender Text im Internet Explorer- Microsoft veröffentlichte Internet Explorer 2.0 im selben Jahr wie Netscape Navigator 2.0
- Internet Explorer war damals dabei, Funktionen aufzuholen, die Netscape bereits implementiert hatte, führte statt
<blink>jedoch<marquee>ein - Mit
<marquee>ließen sich über mehrere Attribute Scrollrichtung, Geschwindigkeit, Wiederholung und ein vor- und zurückspringendes Verhalten steuern - Ein Beispiel ist
<MARQUEE>Oh my god this still works in most modern browsers!</MARQUEE>; in einigen modernen Browsern funktioniert es weiterhin
Was passierte, wenn man beide Tags kombinierte
- In den späten 1990ern war es bis zu einem gewissen Grad üblich, Inhalte, die man hervorheben wollte, sowohl mit
<blink>als auch mit<marquee>zu umschließen- Ein Beispiel ist
<MARQUEE><BLINK>This is my really important message!</BLINK></MARQUEE> - Netscape-Nutzer sahen blinkenden Text, während IE-Nutzer scrollenden oder hin und her bewegten Text sahen
- Ein Beispiel ist
- Diese Methode passte zur Eigenschaft des Webs, unbekannte Elemente zu ignorieren und weiter zu rendern
- Nach Postel’s Law sollten Browser auch bei Eingaben, die sie nicht verstehen, den Nutzern die bestmögliche Darstellung liefern
- Auch der Grund, warum das moderne
<video>-Element kein selbstschließendes Tag, sondern blockförmig ist, liegt darin, dass ältere Browser, die<video>nicht kennen, den darin enthaltenen Fallback-Code lesen können
- Selbst in Browsern, die keines der beiden Tags kannten, blieb der Inhaltstext weiter lesbar
- In dem Sinn, dass nur unterstützte Browser auffällige Effekte erhielten und in den übrigen Umgebungen einfacher Text übrig blieb, kam dies progressive enhancement nahe
- JavaScript und CSS lassen sich nach derselben Regel anwenden, was Wartbarkeit und Barrierefreiheit hilft
Heute eher ein historisches Überbleibsel
- Netscape 7 war 2002 einer der seltenen Browser, die sowohl
<blink>als auch<marquee>unterstützten- Bei Unterstützungsreihenfolge und verschachtelten Elementen gab es einige heikle Punkte, aber auf manchen privaten Webseiten erschienen Scrollen und Blinken gleichzeitig
<blink>ist heute praktisch ein totes Tag; falls unbedingt nötig, lässt sich ein ähnlicher Effekt mit CSS erzeugen<marquee>ist noch am Leben- Neben einem polyfill gibt es auch weiterhin native Unterstützung in einigen Browsern
- Trotzdem sollte man
<marquee>auf realen Websites vermeiden
- Als Material für digitale Nostalgie ist es interessant, aber es gibt keinen Grund, anderen Nutzern blinkenden und vorbeilaufenden Text aufzuzwingen
1 Kommentare
Meinungen auf Hacker News
https://web.archive.org/web/20201111125145/https://danq.me/2...
Fühlt sich an, als wäre das schon vor 3.000 Jahren gewesen
Ich erinnere mich an die Zeiten, als man darüber stritt, ob Navigation innerhalb von Frames eine schlechte Praxis sei. Nicht iframe, ich meine Frames. Vor AJAX nutzten wir HTTP 204, um Nachrichten an den Server zu schicken, ohne die Seite neu zu laden, und Anfang der 2000er zeichnete man in Dreamweaver tagelang Bundesstaatsgrenzen auf Landkarten, um anklickbare Image Maps zu bauen
Wenn ein Dreamweaver-Template-Update Änderungen überschrieben hatte, gab es keine Versionsverwaltung und damit keine Möglichkeit zur Wiederherstellung; außerdem verarbeiteten wir im Backend Klickpositionen auf Bildern. Wir streamten Seitenaktualisierungen mit Motion JPEG und gingen mehrere Schritte durch, um PNG-Alpha-Blending im IE zu reparieren, bis wir uns schließlich auf ActiveX-Ansätze stützten
Wir bauten Site-Navigationen mit Java, Flash und Silverlight, und ich erinnere mich auch daran, wie sehr Spacer-GIFs, Conditional Comments und Firebug wie Retter in der Not wirkten. Ich weiß nicht, wann ich alt geworden bin; eines Tages war es einfach so
Responsivität war auch nötig, damals aber meist nur Anpassung an verschiedene Desktop-Größen, und normalerweise musste man Ecken ausschneiden und in Tabellenzellen platzieren. Wenn man so etwas von Hand macht, entwickelt man als Entwickler eine seltsame Widerstandskraft
Das waren Designs, die am besten auf 800x600 passten, und all diese Momente sind in der Zeit verschwunden wie Tränen im Regen
In der IE4+-Ära war das wohl die eleganteste Methode
Das habe ich vor langer Zeit gebaut, und jedes Mal, wenn ich es zeige, sind die Leute überrascht, dass es überhaupt kein JavaScript gibt. Alle Animationen bestehen nur aus marquee-Tags: https://udel.edu/~ianozi/
Meine liebste Technik mit marquee war, sie in unterschiedliche Richtungen zu verschachteln
Wenn man den inneren marquee in die entgegengesetzte Richtung zum äußeren und mit derselben Geschwindigkeit laufen ließ, konnte man es so wirken lassen, als würde der Inhalt scrollen und dann anhalten; mit noch mehr Ebenen und abwechselnden Geschwindigkeiten ließ sich sogar ein zufälliges Herumspringen erzeugen. Ich glaube, damit das funktionierte, musste man dem inneren marquee eine maximale Breite geben
Es gibt einen Grund, warum marquee sehr nützlich ist: HTML-Injection
marquee bewegt sich, und fast niemand verwendet diesen Tag absichtlich, daher lässt sich beim Testen von HTML-Injection-Schwachstellen leicht erkennen, ob der Angriff erfolgreich war. Auch Nicht-Technikern lässt sich „das sollte sich nicht bewegen, tut es aber“ viel besser erklären als „dieser Text sollte nicht fett sein, ist es aber“
(2020)wie ein marquee durch<plaintext>-Tag verwendet. Da es ein Element ist, das sich nicht schließen lässt, verwandelt es den Rest des Dokuments in rohes HTML und fällt deshalb extrem aufhttps://developer.mozilla.org/en-US/docs/Web/HTML/Reference/...
Der blink-Tag war natürlich schon früher sehr verhasst, und ich habe einmal testweise in einem Browser-Binary, vermutlich Netscape, nach
"blink"gesucht und es durch"blonk"ersetzt. Tadaa, es blinkte nicht mehr"__gnu_warning"in"__gnu_whining"geändert habe, um das unnötige Genörgel rund umgets()zum Schweigen zu bringenKlar, Buffer Overruns gibt es, aber wenn man ein Wegwerfprogramm benutzt, muss man eben einfach den Buffer nicht überlaufen lassen
Zum Beispiel habe ich das Verbergen von Benachrichtigungen oder das Senden des Signals, dass ich gerade eine Nachricht schreibe, abgeschaltet
„Das Tier wird erscheinen, umgeben von einer wirbelnden Wolke der Rache. Die Häuser der Ungläubigen werden einstürzen und sie werden bis auf den Boden niedergebrannt. Ihre Tags werden blinken bis zum Tag des Jüngsten Gerichts.“
Das ist ein Zitat aus The Book of Mozilla, 12:10 in
about:mozilla, und nun brennt Mozilla bis auf den Boden nieder. Das war’sEin Freund hat immer seinen zweiten Vornamen in Tags eingeschlossen, um schnell fehlendes Escaping und potenzielles XSS zu prüfen. Früher hat das erstaunlich gut Probleme aufgedeckt
Dieser Kommentar befindet sich im Aufbau. Bitte besuchen Sie ihn regelmäßig wieder, um Updates zu sehen
[NEW]nichtEiner der Gründe, warum Leute solche Elemente nicht mögen, ist, dass sie missbraucht wurden
Aber genau dieser Missbrauch hat viele Menschen dazu gebracht, HTML selbst auszuprobieren. Für jemanden, der HTML zum ersten Mal verwendete, war es ziemlich befriedigend, blink oder marquee auszuprobieren; sie waren so etwas wie die Einstiegsdroge in die Welt von HTML
Wer solche Elemente verwendete, hat wahrscheinlich irgendwann gelernt, dass man das nicht tun sollte — oder hat sie weiter benutzt, weil es eine mySpace-Seite war. Es ist leicht, sich über blink und marquee lustig zu machen, ähnlich wie Grafikdesigner auf Leute herabsehen, die Comic Sans benutzen, aber solche Tabus waren sehr nützlich, damit Menschen das Selbstvertrauen bekamen, „es einfach mal zu versuchen“