Hallo,
Das Thema wird hier bekanntlich oft diskutiert, wobei ich den
Eindruck habe, dass hier im Forum (und in ähnlichen Kreisen)
die Meinung vorherrscht, dass target="_blank"
und
das Öffnen neuer Fenster "böse" sind.
Der Usability-Experte Jakob Nielsen beispielsweise vergleicht
das Öffnen von [normalen] Links [zu anderen HTML-Seiten] in einem
neuen Fenster mit einem Staubsaugervertreter, der als erstes
einen Aschenbecher auf dem Teppich seiner "Kunden" ausleert...
(Der Vergleich hat mir nie ganz eingeleuchtet, aber er zeigt,
wie "böse" es für Nielsen ist... ;-)
Was dagegen spricht, Links (egal, welcher Art) in einem neuen
Fenster zu öffnen, ist die Behinderten-Zugänglichkeit (Accessibility).
Neue Fenster können z.B. für Sehbehinderte und Blinde ein Problem sein.
Techniques for Web Content Accessibility Guidelines 1.0
http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-avoid-pop-ups
"Until user agents allow users to turn off spawned windows,
do not cause pop-ups or other windows to appear and do not
change the current window without informing the user."
Hinweis: Diese Empfehlungen stammen aus dem Jahr 2000.
Dieses Problem könnte heute dadurch entschärft sein, dass
Browser wie Firefox es dem Benutzer ermöglichen, das Öffnen
von neuen Fenstern zu unterdrücken, sodass alle Inhalte
zwingend im gleichen Fenster bzw. Tab angezeigt werden.
(Das "until user agents" wäre damit IMHO für diesen Punkt
erfüllt, und man könnte somit wahrscheinlich Links machen,
die in einem neuen Fenster aufgehen, solange man die
Benutzer ausdrücklich warnt, z.B. im Linktext. Ob eine Warnung
im TITLE-Attribut ausreichend wäre, weiss ich nicht.)
Oft wird auch argumentiert, dass ja der mündige Benutzer (z.B. durch
Rechtsklick auf einen Link und "Link in neuem Fenster/Tab öffnen" u.s.w.)
selbst die Kontrolle habe.
Wobei ich mich frage, wie viele "normale" Benutzer diese Möglichkeit
überhaupt kennen. (Wir Webdesigner sind da nicht repräsentativ!)
Trotz dieser Zweifel an den Browser- und Fenster-Kompetenzen
der Benutzer mache ich selbst normalerweise alle Links ohne
target-Attribut und verzichte auf das Öffnen neuer Fenster.
Ich gehe davon aus, dass Surfen ein linearer Prozess ist,
d.h. ich bewege mich als Surfer auf einer Schiene vorwärts,
von Seite zu Seite oder auch mal von einer HTML-Seite zu
einem PDF. Und wenn ich in einer "Sackgasse" bin (z.B. in
einem PDF-Dokument) oder sonst zurück will, kann ich immer
die "Zurück"-Funktion des Browsers nutzen. Und wenn ich
absichtlich "mehrgleisig" fahren will, dann öffne ich als
Benutzer die Links in zusätzlichen Tabs im Browser, weiss
dann aber auch, dass ich eben mehrere Tabs offen habe.
Das Öffnen von neuen Fenstern habe ich in Firefox abgeschaltet.
Spezialfall PDF & Co.
Vor kurzem erhielt ich ein Mail von einem Homepage-Besucher zum einem
"Problem", das dieser auf einer von mir gemachten Homepage hatte:
Der Benutzer klickte auf einen Link (ohne target oder dergleichen),
welcher ein PDF einfach im gleichen Browserfenster öffnete.
Am Schluss machte der Benutzer das Fenster (gewohnheitsmässig) zu.
Jetzt erwartete er, wieder die HTML-Seite zu sehen, auf der er vorher
war und wo er den Link zum PDF angeklickt hatte. Stattdessen war
da nichts mehr zu sehen.
Und dieser Benutzer ist offenbar nicht der einzige, der dieses
"Problem" hat.
Und bei einer Website, an der ich gerade arbeite, wollte die
Kundin, dass ich die Links zu PDFs in einem neuen Fenster öffne.
Um weitere Argumente dagegen zu haben, suchte ich nochmals bei Jakob
Nielsen, was er zu neuen Fenstern schreibt, und stiess auf folgendes:
Einerseits ist bei den "Top Ten Mistakes in Web Design"
(the very worst mistakes of Web design; updated 2007)
http://www.useit.com/alertbox/9605.html
der 9. Fehler: "Opening New Browser Windows".
Die Haupt-Begründung ist, dass das Öffnen von neuen Fenstern
die "Zurück"-Funktion des Browsers zunichte macht.
Aber für PDF und andere "Non-Web-Documents" (z.B. Excel-, Word-
oder PowerPoint-Dateien, die man auf dem Internet anbietet)
schreibt Nielsen folgendes:
- Am besten sollte man - per HTTP-Head - dafür sorgen, dass
die Dateien gar nicht erst in einem Browserfenster (z.B.
per Plugin oder eingebauten Viewer) angezeigt werden,
sondern dass der Benutzer sie herunterladen muss und sie
dann mit einem externen Programm öffnet. (Punkt 4) - Ansonsten sollte man die Links so machen, dass
1. die Dokumente in einem Zusatz-Browserfenster aufgehen
2. der Benutzer im Vornherein gewarnt wird, dass der Link
ein Zusatzfenster öffnen wird.
3. das Zusatzfenster die üblichen Browser-Schaltflächen
und -Menüs *nicht* aufweist, da z.B. die Zurück-Funktion
oder Datei -> Drucken oft nicht wie erwartet funktionieren,
wenn es sich z.B. um PDF- oder PowerPoint-Dokumente handelt.
(Das heisst technisch gesehen: Man müsste solche Links - neben
dem href-Attribut und dem target-Attribut für Benutzer ohne
JavaScript - mit einem Attribut im Stil
onclick="window.open(this.href,'_blank','scrollbars=yes,resizable=yes'); return false;"
ergänzen und somit das Zusatzfenster bei aktiviertem JS eben
mit JS zu öffenen und die Browser-Schaltflächen ausblenden.)
http://www.useit.com/alertbox/open_new_windows.html
Ich bin gespannt auf Eure Meinungen zu diesem "PDF-Problem"
und den Empfehlungen von Jakob Nielsen.
Freundliche Grüsse
Thomas
P.S. Wenn man sich sämtliche Diskussionen bezüglich target-Attribut
ersparen will, nimmt man am besten eine Strict-Variante,
z.B. HTML 4.01 Strict oder XHTML 1.0 Strict... ;-)
(Das "PDF-Problem" bleibt damit allerdings ungelöst.)