Erläuterungen und Beispiele zu einer oft gestellten Frage (FAQ) in der Newsgroup de.comm.infosystems.www.authoring.misc (dciwam).
Wenn ich im Microsoft Internet Explorer auf einen Link klicke, erscheint ein gepunkteter Rahmen – wie kann ich diese Linkumrandung beseitigen?
Sie können nachfolgend ein Beispiel ausprobieren:
Der Internet Explorer (IE) zeigt mit dieser Umrandung an, daß dem Text- oder Grafiklink der Fokus gegeben ist. Die Browser Mozilla und Konqueror verhalten sich ebenso.
Einem HTML-Element, zum Beispiel Hyperlink-Anker (A
) oder Texteingabefeld (INPUT
), muß vom Nutzer der Fokus gegeben werden, damit er es aktivieren und benutzen kann. Das kann über den Mauszeiger oder Tastatureingaben wie Tabulator-Taste oder eine festgelegte Zugangstaste (access key, keyboard shortcut) geschehen.
Der Fokus bietet dem Nutzer eine wichtige Navigations- und Orientierungsmöglichkeit. Es empfiehlt sich daher nicht, die Fokus-Kennzeichnung abzuschalten!
Der Nutzer kann sonst nicht mehr erkennen, welcher Link aktuell den Fokus erhält. Die Kennzeichnung des Fokus-Links ist zum Beispiel eine gute Orientierungshilfe, wenn man mit der Zurück-Schaltfläche des Browsers auf eine zuvor besuchte Seite zurückspringt und dort der zuletzt ausgewählte Link die Fokusmarkierung erhält – womöglich in einer umfangreichen Auflistung von bereits besuchten Links.
Die einzige bislang (im Jahr 2002) funktionierende Lösung zum Abschalten der Fokusumrandung im Internet Explorer 5 und 6 ist ein JavaScript, welches jedoch einen gravierenden Nachteil mit sich bringt: Die Tastaturnavigation mit der Tabulator-Taste ist dann für den Nutzer nicht mehr möglich!
<a href="linkziel.html"
onfocus="if (this.blur()) { this.blur(); }"
>ein Link</a>
Sie können nachfolgend ein Beispiel ausprobieren:
Die Darstellung des Fokus soll sich zukünftig über die dynamische CSS2-Pseudoklasse :focus
mit der Eigenschaft outline
festlegen lassen. Aktuell ist das jedoch bis zum IE6 noch nicht möglich.
a:focus { outline: none; }
Sie können nachfolgend ein Beispiel ausprobieren:
Microsoft stellt für HTML-Elemente das proprietäre Attribut hidefocus
und für Scripte die Eigenschaft hideFocus
zur Verfügung. Beide Methoden werden ab IE5.5 interpretiert, jedoch nicht von Versionen darunter. Diese Angaben sind in keinem HTML-Standard definiert und deshalb ist von ihrer Verwendung dringend abzuraten.
<a href="linkziel.html" hidefocus="true">ein Link</a>
Für Scripting:
<a href="linkziel.html"
onfocus="if (this.hideFocus == false)
{ this.hideFocus = true; }"
>ein Link</a>
Beispiele in separater Datei, da durch hier eingebundenen zuvor genannten Code dieses Dokument ungültig würde.
Man sollte die Linkumrandung, die den Fokus eines Elementes anzeigt, nicht deaktivieren, da sonst wichtige Navigations- und Orientiertungsmöglichkeiten entfallen. Desweiteren sind die Möglichkeiten der Deaktivierung nicht einfach zu bewerkstelligen und funktionieren nur in wenigen Browsern.
Sollte – aus welchen Gründen auch immer – das Abschalten notwendig sein, so empfiehlt sich aktuell die JavaScript-Lösung, zukünftig bei besserer Unterstützung sollte jedoch die CSS-Methode genutzt werden.
focus
in der HTML 4.01 Spezifikation.:focus
-Pseudoklasse in der CSS2 Spezifikation.outline
-Eigenschaft in der CSS2 Spezifikation.Vielen Dank an Thomas Meinike für die Beleuchtung des Microsoft hideFocus
-Scriptings. Desweiteren an zahlreiche Regulars in de.comm.infosystems.www.authoring.misc für hilfreiche Anmerkungen.
Gerne nehme ich Anregungen, Hinweise und Fragen per E-Mail entgegen: Lars Kasper, mail@LarsKasper.de