Wer kennt es nicht: Man klickt einen Link an und plötzlich geht ungefragt ein neues Browserfenster auf! Wenn man, wie ich, mit einem etwas langsameren Computer unterwegs ist, hat man besonders viel Spaß daran. Dann nämlich kann man sich, vor einem plötzlich losrattenden Rechenknecht sitzend, über das neue Fenster schon ärgern bevor es überhaupt da ist! Verantwortlich ist meist ein Link, der mit target="blank"
versehen wurde. Dieser Artikel fordert die Ausrottung dieser nervigen, archaischen und vor allem benutzerfeindlichen Krankheit. Gute Gründe dafür gibt es reichlich.
Mein Computer gehört mir!
Schon 1999 (!) wurde target="blank"
von klugen Menschen unter die The Top Ten Web Design Mistakes gewählt:
Opening up new browser windows is like a vacuum cleaner sales person who starts a visit by emptying an ash tray on the customer's carpet. Don't pollute my screen with any more windows, thanks [...] If I want a new window, I will open it myself!
Die einzige Person, die über die Existenz von neuen Browserfenstern zu entscheiden hat, ist und bleibt der Surfer selbst. Mit neuen Fenster läuft man Gefahr, seine Nutzerschaft zu verwirren oder zu verärgern - sei es durch das Fenster oder durch die dann plötzlich nicht mehr funktionierende „Zurück“-Funktion.
Kein Webmaster, Admin oder Blogger kann ernsthaft glauben, dass seine Website so toll ist, dass ein Nutzer im Gegenzug die feindliche Übernahme seines Desktops gutheißt.
target
ist ein HTML-Relikt
Das Target-Attribut ist ein Überbleibsel aus der Ära der Framesets. Es diente dazu, festzulegen welcher Teil eines Framesets durch einen Link angesprochen werden sollte. Nun sind Framesets aus gutem Grund mittlerweile ausgestorben und entsprechend ist target
auch nur noch in bei den Doctypes „Frameset“ (wie gesagt faktisch ausgestorben) und „Transitional“ (HTML für Warmduscher) erlaubt.
Von solch finsteren Schatten der HTML-Vergangenheit sollte man sich befreien. Wer kein <blink>
mehr braucht, der sollte auch ohne target="blank"
klarkommen. Nebenbei bemerkt: Für neue Fenster könnte man beim target
-Attribut durchaus etwas anderes als _blank
einsetzen. Auch target="_gnnnfigte"
funktioniert prächtig.
Nicht unerwähnt bleiben sollte auch, dass man neue Fenster mit Javascript erzwingen kann. So missbraucht man kein HTML-Fossil mehr, was aber nichts an den anderen Punkten ändert.
Mehrere Browserfenster sind Schnee von gestern
Wozu braucht man noch mehrere Browserfenster? Selbst der Internet Explorer kennt mittlerweile Tabs. Sich den Desktop mit mehreren Browsern zu verstopfen, ist längst überholt. Sollte trotzdem jemand mehrere Fenster wünschen, so ist das sicher auch ohne HTML-seitige Nachhilfe zu erreichen.
Ja, es gibt die Möglichkeit mit browserspezifischem Code neue Tabs zu erzwingen. Nein, das ist keine gute Idee (siehe feindliche Übernahme des Computers argloser Nutzer
).
Gründe für neue Fenster?
Gründe für neue Fenster oder neue Tabs gibt es. Andere Mediatypen wie z.B. PDFs oder die Einträge einer Blogroll können, je nach Lust und Laune des Nutzers, in neuen Fenstern oder Tabs besser aufgehoben sein. Aber darüber hat allein der Surfer zu entscheiden, nicht die Website. Man kann dem Nutzer bei der Entscheidung helfen, indem man externe Links oder besondere Mediatypen kennzeichnet. Aber man kann doch nicht einfach seinen Computer dazu veranlassen, ungefragt irgendwelche Fenster zu öffnen! Deine Website ist so wichtig und toll, dass sie mir diktieren kann wie sich mein Desktop verhält? Wohl kaum.
Zum Abschluss noch ein unverzichtbares Userscript für Opera und Firefox: This script will search for all links on a page, and remove all instances of target="_blank"
in the page, so that web sites never, ever opens new windows.