Moin!
welches logisches Element sollte man verwenden, um Hotkey-Buchstaben zu unterstreichen?
Die Frage ist zuallererst mal: Sollte man Accesskey-Buchstaben überhaupt unterstreichen?
Und zweitens beantwortet sich die Frage nach einem logischen Element doch recht simpel: Logische Elemente regeln lediglich die Hervorhebung bestimmter Textabschnitte. Als logische Elemente stehen <em> und <strong> zur Verfügung, was immerhin zwei Ebenen der Hervorhebung gegenüber Normaltext entspricht - das sollte mehr als ausreichend sein für normalen Text. Und auch für Accesskey-Hervorhebung.
Denn das Problem ist doch: Was soll ich als Benutzer mit einem Link anfangen, in dem irgendein Buchstabe unterstrichen ist? Moment: Ist ein Link nicht sowieso _durchgehend_ unterstrichen? Und warum schaffen es meine Browser nicht, mit Accesskeys ordentlich umzugehen? Die Information, dass man einen Link per Tastendruck benutzen kann, bringt mir irgendwie wenig, weil egal was ich tue, der Browser den Shortcut schon für alle möglichen anderen Funktionen benutzt, ich also den Link nicht erreiche. Oder ich breche mir die Finger ab, indem ich (hypothetisch) Strg-Shift-Alt+H drücke, um durch Strg-Shift-Alt, der einzigen nichtbenutzten Metatastenkombination, in den Accesskeymodus zu gelangen und dann den Key "H" zu wählen.
Das ganze Drama der belegten Accesskey-Kombinationen wird in http://2bweb.de/accesskey/empfehlung.htm dokumentiert. Es gibt keine einheitlichen Vorschläge, so dass sich Benutzer nicht an bestimmte Kombinationen gewöhnen können (bei ihrem Browser können sie das: Strg-N öffnet immer ein neues Browserfenster - aber auf einer Website könnte Alt-N jede beliebige Funktion aufrufen, ganz nach den Vorstellungen des Autors - und das bei jeder Webseite anders).
Einen Buchstaben des Links zu unterstreichen mag zwar auf den ersten Blick nett aussehen - aber wenn man es hinkriegt, alle Links der Hauptnavigation auf dem ersten Buchstaben zu unterstreichen, weil man passende Accesskeys wählen konnte, dann wird die Information "Hey, ich bin ein accesskey-aktivierter Link" nicht ankommen, sondern "Der Designer hat immer den ersten Buchstaben des Links unterstrichen".
Die einzige Möglichkeit, das accesskey-Attribut sinnvoll zu benutzen, ist: Browserunterstützung!
- Der Browser muß eine in diesem Browser einheitliche, websiteübergreifende Methode implementieren, einen Link als accesskey-aktivierbar zu kennzeichnen - ohne dass der Designer eingreifen muß. Attribut setzen, und fertig.
- Es muß dann eine einheitliche Methode (Tastenkombination) geben, wie man diese Accesskeys aktivieren kann.
- Außerdem müssen alle Tasten als Accesskey zur Verfügung stehen, nicht nur einzelne. Gerade dieser letzte Punkt steht natürlich im Konflikt mit der restlichen Benutzerfreundlichkeit, denn ich werde mir mein Strg-N, Strg-C/V etc. nicht wegnehmen lassen. "Strg" als Aktivierungstaste fällt also weg. "Alt" als Aktivierungstaste fällt auch weg, damit kriegt man in Windows-Programmen die Menüpunkte mit unterstrichenen Buchstaben aufgerufen. "Shift" ist typischerweise zum Schreiben von Großbuchstaben in Textareas reserviert und deshalb auch belegt. "Strg+Shift" ist in Opera (und vermutlich in anderen Browsern) für diverse spezielle Operationen auch schon weg, ebenso "Strg+Alt". "Shift+Alt" ist vielleicht noch frei, aber mit den Fingern schwieriger zu drücken (Barrierefreiheit? Nicht mit dieser Tastatur!), und "Strg+Alt+Shift" fällt vermutlich komplett flach. Ergo: Es geht sowieso nicht!
- Sven Rautenberg