Link ohne href nicht als Link ersichtlich
misterunknown
- css
Moin,
warum zum Henker stellen die aktuellen Browser (Chrome, IE, FF) Links mit einem href-Attribut anders dar als Links ohne dieses? Gibt es da einen Trick, dass beides gleich aussieht, oder muss man mit CSS alles durchstylen um einen gleiches Erscheinungsbild zu bekommen?
Grüße Marco
warum zum Henker stellen die aktuellen Browser (Chrome, IE, FF) Links mit einem href-Attribut anders dar als Links ohne dieses? Gibt es da einen Trick, dass beides gleich aussieht, oder muss man mit CSS alles durchstylen um einen gleiches Erscheinungsbild zu bekommen?
ich denke, die verwenden einen attributselektor im Default-Stylesheet der nur Linus mit href-Attribut entsprechend unterstreicht usw.
Moin,
ich denke, die verwenden einen attributselektor im Default-Stylesheet der nur Linus mit href-Attribut entsprechend unterstreicht usw.
Wahrscheinlich. Im Chrome zeigt er mir zwar die "computed styles" an, zeigt aber nicht, welcher Selektor greift.
Grüße Marco
@@misterunknown:
nuqneH
warum zum Henker stellen die aktuellen Browser (Chrome, IE, FF) Links mit einem href-Attribut anders dar als Links ohne dieses?
Weil a-Elemente ohne href-Attribut keine Links sind. Deshalb.
Qapla'
Moin,
Weil a-Elemente ohne href-Attribut keine Links sind. Deshalb.
Ich dachte das A-Element ist per Definition ein Hyperlink. Aber man lernt nie aus.
Dann wird mir wohl nichts übrig bleiben, als alles mit CSS zu stylen (a, :hover, etc.) ...
Grüße Marco
@@misterunknown:
nuqneH
Weil a-Elemente ohne href-Attribut keine Links sind. Deshalb.
Ich dachte das A-Element ist per Definition ein Hyperlink.
Nein, das war es noch nie. Es kann auch ein http://de.selfhtml.org/html/verweise/projektintern.htm#anker@title=Sprunganker sein.
Oder weder noch. Bspw. im Menü, 'bar' ist die aktuelle Seite, deshalb nicht verlinkt:
<nav>
<h2>Navigation</h2>
<ul>
<li><a href="…">foo</a></li>
<li><a>bar</a></li>
<li><a href="…">baz</a></li>
</ul>
</nav>
Was ist es bei dir? Eine Schaltfläche, die per JavaScript eine Funktion bekommt? In dem Fall ist mit ziemlicher Sicherheit button das richtige Element, nicht a. button kann auch entsprechend gestylt werden, dass es wie ein Link aussieht.
Zumal man bei a ohne @href noch @tabindex setzen muss, damit der Nutzer das auch per Tastatur anwählen kann:
<a tabindex="0" role="button">
Qapla'
Moin,
Nein, das war es noch nie. Es kann auch ein http://de.selfhtml.org/html/verweise/projektintern.htm#anker@title=Sprunganker sein.
Ok, aber dennoch könnte man die gleich aussehen lassen. Ob nun Sprunganker oder Link wird in der Praxis ja oft auch nicht optisch unterschieden.
Was ist es bei dir? Eine Schaltfläche, die per JavaScript eine Funktion bekommt? In dem Fall ist mit ziemlicher Sicherheit button das richtige Element, nicht a. button kann auch entsprechend gestylt werden, dass es wie ein Link aussieht.
Ich habe eine Art Filemanager, wo eine Liste mit Verzeichnissen und Dateien dargestellt wird. Die Dateien werden direkt verlinkt, die Verzeichnisse bekommen eine entsprechende Funktion per onclick-Attribut um hinein zu navigieren (ist eine Javascript-Anwendung, die Dateiliste des Verzeichnisses wird dynamisch nachgeladen).
Zumal man bei a ohne @href noch @tabindex setzen muss, damit der Nutzer das auch per Tastatur anwählen kann:
Ist das Pflicht bei HTML5? Allgemein ist es natürlich schon sinnvoll. Kann man überall Tabindex auf 0 setzen oder muss man da händisch durchzählen?
Grüße Marco
@@misterunknown:
nuqneH
Ok, aber dennoch könnte man die gleich aussehen lassen. Ob nun Sprunganker oder Link wird in der Praxis ja oft auch nicht optisch unterschieden.
Mit Sprunganker war nicht der Ausgangspung <a href="#foo">
gemeint (der ja auch ein @href-Attribut hat, somit ein Link ist), sondern das Sprungziel <a name="foo">
.
(Und ja, natürlich verwendet man heutzutage dafür besser IDs als a mit @name.)
Zumal man bei a ohne @href noch @tabindex setzen muss, damit der Nutzer das auch per Tastatur anwählen kann:
Ist das Pflicht bei HTML5?
Bei HTML5 natürlich nicht. Für Barrierefreiheit aber ja.
Kann man überall Tabindex auf 0 setzen oder muss man da händisch durchzählen?
Durchzählen geht mit 1, 2, 3, … Elemente mit @tabindex="0" werden in die durchtabbaren Elemente aufgenommen, und zwar an ihrer Stelle im Markup. Das kann man nachlesen.
Qapla'
Hallo,
warum zum Henker stellen die aktuellen Browser (Chrome, IE, FF) Links mit einem href-Attribut anders dar als Links ohne dieses?
Weil a-Elemente ohne href-Attribut keine Links sind. Deshalb.
Hier hätte man sehr schön Ekki zitieren können: Link
Gruß
Kalk
Hallo,
warum zum Henker stellen die aktuellen Browser (Chrome, IE, FF) Links mit einem href-Attribut anders dar als Links ohne dieses?
Warning: Paradox detected.
Ein Link ohne href-Attribut ist kein Link.
Du meinst vermutlich ein a-Element ohne href-Attribut.
Und da sich ein a-Element mit href-Attribut durch seine Funktion ganz erheblich von einem ohne href-Attribut unterscheidet, erscheint es mir sinnvoll, dass sie dann unterschiedliche Default-Formatierungen bekommen.
Gibt es da einen Trick, dass beides gleich aussieht, ...
Ja, die entsprechenden Eigenschaften für a ohne weitere Unterscheidung festlegen.
Ciao,
Martin
...oder muss man mit CSS alles durchstylen um einen gleiches Erscheinungsbild zu bekommen?
Ja!
Mit Links ohne hrefs fängt es an. Dann kommen die Articel ohne Text und die title ohne Titel. Echt doof werden die Footer ohne Schuhe und die header ohne Mützen.
Deswegen empfehlen Experten schon seit geraumer Zeit immer divs zu benutzen. Wird auf ca. 80% aller Webseiten schon wunderbar umgesetzt. Dann tut man sich beim styling leichter.
Nagut im Ernst, wenn dich das fehlende href stört, dann nimm einfach eine "#" (springt beim klick an den Seitenkopf) oder ein "javascript:".
Gruß
T mit Rex aber ohne href
@@T-Rex:
nuqneH
Nagut im Ernst, wenn dich das fehlende href stört, dann nimm einfach eine "#" (springt beim klick an den Seitenkopf)
Du hast die Unsinnigkeit deines Vorschlags selbst erkannt.
oder ein "javascript:".
Auch das ist nicht wirklich sinnvoll.
Qapla'
Nagut im Ernst, wenn dich das fehlende href stört, dann nimm einfach eine "#" (springt beim klick an den Seitenkopf)
Du hast die Unsinnigkeit deines Vorschlags selbst erkannt.
Wenn das Element bereits am Seitenkopf ist, kann man ruhig ein "#" benutzen.
oder ein "javascript:".
Auch das ist nicht wirklich sinnvoll.
Weil? Fehl vielleicht die Javascript Anwendung? Wenn dich das stört kann man ja eine leere anonyme Funktion dazu schreiben.
So oder so versuche ich das href attribut zu erzwingen, damit misterunknown nicht extra alles stylen muss.
Gruß
Hilfsbereiter Optimist
T-Rex
Om nah hoo pez nyeetz, T-Rex!
So oder so versuche ich das href attribut zu erzwingen, damit misterunknown nicht extra alles stylen muss.
Es ist aber äußerst sinnvoll, a-Elemente mit und ohne href-Attribut von einander zu unterscheiden.
Matthias
Meine Herren,
Es ist aber äußerst sinnvoll, a-Elemente mit und ohne href-Attribut von einander zu unterscheiden.
Ich klicke alles an, was unterstrichen ist oder den Cursor meiner Maus auf "pointer" setzt. Wenn dann nichts passiert - WOOT!
@@1UnitedPower:
nuqneH
Ich klicke alles an, was unterstrichen ist oder den Cursor meiner Maus auf "pointer" setzt.
Wirklich?
Ich schick dir gleich mal eine HTML-Mail, wo was unterstrichen ist oder den Cursor deiner Maus auf "pointer" setzt. Das kannst du dann alles anklicken! ;-)
Qapla'
Moin,
Es ist aber äußerst sinnvoll, a-Elemente mit und ohne href-Attribut von einander zu unterscheiden.
Grundsätzlich sicherlich, in meinem Fall eher nicht. Im Explorer sind ja Verzeichnisnamen und Dateinamen auch nicht unterschiedlich gestylt. Ein Symbol, welches anzeigt was für ein Typ der Eintrag ist, ist auch bei mir vorhanden.
Grüße Marco
Om nah hoo pez nyeetz, misterunknown!
Du musst also alles mit CSS durchstylen, um ein gleiches Erscheinungsbild zu bekommen. So viel ists ja nicht. Möglicherweise ist jedoch auch das a-Element semantisch falsch. Zeig/Erzähl doch mal, warum du dich für diese Variante entschieden hast.
Matthias
Moin,
Du musst also alles mit CSS durchstylen, um ein gleiches Erscheinungsbild zu bekommen. So viel ists ja nicht. Möglicherweise ist jedoch auch das a-Element semantisch falsch. Zeig/Erzähl doch mal, warum du dich für diese Variante entschieden hast.
Ich habe wie gesagt eine Liste mit Dateien und Verzeichnissen, in welcher Dateien direkt verlinkt werden, Verzeichnisse bekommen aber eine Javascript-Funktion womit man hinein navigieren kann (nachlanden per AJAX). Ich habe jetzt einfach die Definitionen für a, a:link, a:visited und a:hover einheitlich definiert. Erstere 3 habe ich gleichgesetzt (da man im einem "normalen" Dateiexplorer ja auch nicht sieht, welche Datei man schon geöffnet hatte, und letzteres hatte ich auch schon vorher definiert.
Grüße Marco