Wann target="_blank" verwendet werden sollte

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Anker-Links1 können ein target-Attribut haben, das steuert, was passiert, wenn dieser Link angeklickt wird. Einer der möglichen Werte dieses Attributs ist _blank, der dem Browser mitteilt, ein neues Fenster (oder einen Tab, je nach Präferenz des Benutzers) zu öffnen, wenn dieser Link angeklickt wird.

Dies war früher in HTML „ungültig“ (vielleicht nur XHTML?), aber die Leute benutzten es trotzdem, da es funktionierte. Es ist jetzt in HTML5 vollkommen gültig. Aber gibt es gute Gründe, dies zu tun?

Ein schlechter Grund: Weil es Ihnen so gefällt.

Ob es Ihnen gefällt oder nicht, target="_blank" ist eine Änderung des Standardverhaltens. Links, die auf derselben Seite geöffnet werden, ist das Standardverhalten (als hätte der Link target="_self").

Vielleicht haben Sie eine persönliche Vorliebe dafür entwickelt, alle Links in neuen Fenstern/Tabs zu öffnen. Das ist wunderbar für Sie, aber es ist sicher anzunehmen, dass die meisten Benutzer mit dem Standardverhalten am bequemsten sind. Und somit weniger bequem mit Ihrer Erzwingung eines anderen Verhaltens.

Wenn es ein internes Tool nur für Sie ist, tun Sie, was Sie wollen. Wenn andere Leute die Seite benutzen, lassen Sie es sein.

Es ist auch erwähnenswert, dass Benutzer einen Link erzwingen können, in einem neuen Fenster/Tab zu öffnen, indem sie den Link mit der [Meta-Taste] anklicken. Das bedeutet, dass ihnen beide Verhaltensweisen für Links zur Verfügung stehen. Das bedeutet auch, dass, wenn Sie gerne neue Tabs öffnen, Sie das tun können, und Sie müssen dieses Verhalten niemand anderem auferlegen.

Durch die Verwendung von target="_blank" ist nur dieses Verhalten verfügbar.

Ein schlechter Grund: Nur weil Sie möchten, dass Benutzer Ihre Seite niemals verlassen.

Branding Branding Branding! Augenpaare, Baby. Metriken. ENGAGEMENT.

Andere Seiten sollten normale Links haben, aber unsere Seite ist besonders. Unsere Seite ist wichtiger und sollte niemals zurückgelassen werden.

Ein schlechter Grund: „Interne“ Links und „Externe“ Links sind unterschiedlich.

Wir werden „interne“ Links (Links, die auf unsere eigene Seite zeigen) normal verhalten lassen, aber „externe“ Links (Links, die auf andere Seiten zeigen) in einem neuen Fenster/Tab öffnen.

Dies hängt mit den beiden oben genannten Gründen zusammen, nur vielleicht schlimmer. Sie verstehen, dass Links im normalen Stil ideal sind, aber wenn das bedeutet, dass ein Benutzer Ihre Seite verlässt, sind Sie bereit, dieses Ideal zu brechen.

Ich habe von vielen Leuten gehört, dass dies „eine Konvention“ sei. So wie es gemacht werden soll. Ist es nicht.

Ein schlechter Grund: Der Link führt zu einem PDF

Oder jede andere Art von nicht-webbasierter Ressource. Warum sollte das so anders sein? Sie können immer noch die Zurück-Taste verwenden, um davon zurückzukehren. Wenn Sie Benutzern helfen möchten, es herunterzuladen, ohne es tatsächlich zu öffnen, ist das ein lohnenswertes UX-Ziel, kann aber anders angegangen werden. Zum Beispiel durch die Verwendung des download-Attributs.

Ein schlechter Grund: Mein Kunde möchte es so.

Ich verstehe das „Ich will diesen Kampf nicht führen“-Ding, da wir nur so viel Energie haben. Aber es ist merkwürdig, dass dies überhaupt ein Kampf sein muss. Wenn sie Ihnen in dieser Hinsicht nicht vertrauen, worin vertrauen sie Ihnen dann?

Ich würde es so angehen:

Das Standardverhalten ist, dass Links normal geöffnet werden. Es gibt einige Gründe, warum wir dieses Verhalten ändern möchten, und wir können diese durchgehen, aber für die meisten Links tun wir das nicht. Wir wollen unsere Wünsche den Benutzern nicht aufzwingen und sie möglicherweise wegen einer so kleinen Sache frustrieren. Wir möchten, dass unsere Benutzer sich bei uns wohlfühlen.

Und hoffentlich wird Ihr ruhiger und fundierter Ansatz Ihrem Kunden helfen, sich bei Ihnen wohlzufühlen.

Ein schlechter Grund: Es befindet sich auf einer Seite mit unendlichem Scrollen

Unendliches Scrollen ist knifflig. Es kann in gewisser Hinsicht eine gute UX sein, da es Inhalte ohne Unterbrechung liefern kann. Es kann eine schlechte UX sein, wenn es nicht gut gehandhabt wird. Wenn man zu einer Seite mit unendlichem Scrollen „zurückkehrt“, sollte man in den meisten Fällen dorthin gelangen, wo man aufgehört hat. Die Bewältigung dieses kniffligen Problems ist Ihre Aufgabe. Links einfach zu zwingen, in neuen Tabs zu öffnen, damit dieses Problem nie auftaucht, ist eine Umgehung Ihrer Aufgabe.

Ein guter Grund: Es wird vom Benutzer gestartetes Medium abgespielt

Zum Beispiel: Musik, Video, ein Podcast…

Der Benutzer hat es gestartet. Das Wechseln der Seiten würde es stoppen. An diesem Punkt sollten Sie entweder Links in neuen Tabs öffnen lassen oder den Benutzer fragen, ob er die Seite wirklich verlassen möchte. Zu diesem Zeitpunkt versuchen Sie, das Richtige für ihn zu tun und ihn nicht von seinem Platz zu entfernen.

Wir haben diese Idee bereits hier behandelt. Wenn das Medium abgespielt wird, behandeln Sie Links auf besondere Weise. Wenn das Medium nicht abgespielt wird, befinden sich die Links in ihrem normalen Zustand.

Obwohl ich das sage, überprüfe ich YouTube, und sie nerven dich nicht2, wenn du Videos wechselst.

Ein guter Grund: Der Benutzer arbeitet an etwas auf der Seite, das verloren gehen könnte, wenn die aktuelle Seite wechselt.

Vielleicht schreibt ein Benutzer etwas. Oder arrangiert etwas. Jede Art von Arbeit. Das Anklicken eines Links und das Wechseln der Seiten kann ein herzzerreißender, schrecklicher Moment im Web sein. Habe ich gerade alles verloren, was ich getan habe?

Auch wenn Sie Maßnahmen ergreifen, um sicherzustellen, dass sie diese Arbeit nicht verlieren, sollte es vermieden werden, jemanden durch diese Panik zu schicken.

Ich denke an CodePen, wo Benutzer oft Code schreiben. Wir tun mehrere Dinge, um zu helfen:

  • Links, die zu anderen Seiten führen, die explizit „mehr erfahren“-Links sind (z.B. [?]), die Sie nur sehen, während Sie mit dem Editor interagieren, öffnen sich in einem neuen Tab.
  • Normale Links (z.B. Links im Footer) haben normales Verhalten, aber wir erkennen, ob Sie ungespeicherte Änderungen im Editor haben und fordern Sie auf, diese zu speichern, bevor Sie die Seite verlassen.
  • Wenn Sie zu einer anderen Website wechseln (oder Ihr Browser abstürzt), speichern wir den Zustand der Editoren im localStorage, damit Sie keine Arbeit verlieren.

Der Checkout ist hier ein weiterer Fall. Natürlich möchten Sie während des Checkout-Prozesses keine Kunden verlieren. Ein Link zu etwas wie „Versandinformationen“ sollte geöffnet werden können, ohne dass sie ihren Platz im Checkout verlieren.

„Einen Artikel lesen“ qualifiziert sich meiner Meinung nach hier nicht. Da es (im Allgemeinen) so einfach ist, zurückzukehren (die meisten Browser scrollen sogar bis zu der Stelle, an der Sie waren), besteht kein Risiko eines wirklichen Verlusts, und Leser sind sowieso eher Überflieger.

Ein guter Grund: Ein technologisch obskurer Punkt

Ich baue eine E-Mail, die Leute in Outlook Kangaroo 2009 Enterprise Edition öffnen müssen, aber Links müssen target="blank" haben, sonst öffnen sie sich im Seitenleisten-Anzeigefenster und ...

Fein.

Technik

Falls Sie müssen...

Benutzer zwingen, das Verlassen der Seite zu bestätigen

window.onbeforeunload = function() {
  return "Two buttons will be below this message asking if the user wants to stay on this page or leave.";
}

Korrekte HTML

Wenn Sie es tun wollen, benötigen Sie nicht nur das target-Attribut für die Funktionalität, sondern auch das rel-Attribut für die Sicherheit.

<a href="http://website.com" target="_blank" rel="noopener">Link Opens in New Tab</a>

Lesen Sie mehr über das Sicherheitsproblem.

Drama

Ich merke, dass ich hier ziemlich meinungsstark war. Dies ist eines dieser Themen, bei dem jeder eine Meinung hat. Fühlen Sie sich frei, diese Meinungen natürlich zu teilen, aber lassen Sie uns die Dinge ruhig angehen und uns auf Situationen, Lösungen und Daten konzentrieren, wenn wir können.


1 <form>-Elemente können ebenfalls target="_blank" haben. Ich würde meinen, dass dies ein seltenerer Anwendungsfall ist, aber die gleiche Denkweise in diesem Artikel würde zutreffen.

2 Wenn Sie ein anderes Video auswählen, gelangen Sie direkt dorthin. Aber in diesem Fall frage ich mich, ob das eine UX-Wahl oder eine Werbewahl war. Wenn Sie die Hälfte eines Videos angesehen haben, auf ein anderes Video klicken (sagen wir versehentlich) und dann sofort die Zurück-Taste drücken, geht Ihr Platz verloren (nun, YouTube handhabt dies heutzutage ziemlich gut, aber Sie können sehen, wie es für Video-Websites im Allgemeinen problematisch sein könnte). Vielleicht ist es wichtig für sie, so wenig Reibung wie möglich beim Übergang von Video zu Video zu haben, aber es wäre schön, wenn sie hier ein bisschen Hilfe anbieten würden. Vielleicht ein kleiner Pfeil unter der Zeitleiste, der wie ein Link „Sie haben dieses Video bereits bis hierhin angesehen“ war.