wake-up-neo.net

Ist es richtig, das alt-Tag für einen Ankerlink zu verwenden?

Ist es richtig, ein alt-Tag für einen Ankerlink zu verwenden, so etwas wie

<a href="#" class="test" alt="Something" src="sfasfs" ></a>
116
user2067736

Solche Dinge lassen sich am besten anhand der offiziellen Spezifikation beantworten:

  1. gehen Sie zur Spezifikation: https://www.w3.org/TR/html5/

  2. suchen Sie nach "a element": https://www.w3.org/TR/html5/text-level-semantics.html#the-a-element

  3. aktivieren Sie "Inhaltsattribute", um alle zulässigen Attribute für das a -Element aufzulisten:

    • Globale Attribute
    • href
    • target
    • download
    • rel
    • hreflang
    • type
  4. überprüfen Sie die verknüpften "Globalen Attribute": https://www.w3.org/TR/html5/dom.html#global-attributes

Wie Sie sehen werden, ist das Attribut alt für das Element a nicht zulässig.
Außerdem werden Sie feststellen, dass das src -Attribut ebenfalls nicht zulässig ist.

Durch Validierung Ihres HTML werden Ihnen solche Fehler gemeldet.


Beachten Sie, dass dies für HTML5 gilt, was W3Cs HTML-Standard von 2014 ist. Im Jahr 2016 wurde HTML 5.1der nächste HTML-Standard . Das Finden der zulässigen Attribute funktioniert auf die gleiche Weise. Sie werden sehen, dass das a -Element in HTML 5.1 ein anderes Attribut haben kann: rev.

Sie finden alle HTML-Spezifikationen (einschließlich des neuesten Standards) unter W3Cs HTML Current Status .

123
unor

Für Anker sollten Sie stattdessen title verwenden. alt ist nicht gültig für a. Siehe http://w3schools.com/tags/tag_a.asp

55
tomis

"title" ist in Browsern weit verbreitet. Versuchen:

<a href="#" title="hello">asf</a>
23
Pablo Pazos

Nein, ein alt -Attribut (es wäre ein Attribut, kein Tag) ist für ein a -Element in einer HTML-Spezifikation oder einem HTML-Entwurf nicht zulässig. Und es scheint auch von keinem Browser als bedeutungslos erkannt zu werden.

Es ist ein bisschen rätselhaft, warum die Leute es dann versuchen, aber die wahrscheinliche Erklärung ist, dass sie dies analog zum alt -Attribut für img -Elemente tun und erwarten, dass ein „Tooltip“ angezeigt wird mouseover. Daran sind zwei Dinge falsch. Zunächst hat jedes Element seine eigenen Attribute, die in den Spezifikationen für jedes Element definiert sind. Zweitens ist/war das "Tooltip" -Rendering von alt -Attributen in einigen alten Browsern eher eine Eigenart oder sogar ein Fehler als etwas, das zu erwarten war. Das Attribut alt soll dem Benutzer nur dann angezeigt werden, wenn das Bild selbst aus irgendeinem Grund nicht angezeigt wird.

Um einen "Tooltip" zu erstellen, verwenden Sie stattdessen das title -Attribut oder, viel besser, Google für "CSS-Tooltips" und verwenden Sie CSS-basierte Tooltips Ihrer Wahl (diese können als ausgeblendete "Ebenen" gekennzeichnet werden, die sichtbar werden) bei Mouseover).

6

Sie sollten das title-Attribut für Ankertags verwenden, wenn Sie beschreibende Informationen ähnlich wie für ein alt-Attribut anwenden möchten. Das title-Attribut ist für Ankertags gültig und dient keinem anderen Zweck als der Bereitstellung von Informationen über die verknüpfte Seite.

W3C empfiehlt, dass der Wert des title-Attributs mit dem Wert des title des verknüpften Dokuments übereinstimmt, dies ist jedoch nicht obligatorisch.

http://www.w3.org/MarkUp/1995-archive/Elements/A.html


Alternativ und wahrscheinlich vorteilhafter können Sie das ARIA-Zugriffsattribut aria-label Verwenden (nicht zu verwechseln mit aria-labeledby). aria-label Hat die gleiche Funktion wie das alt-Attribut für Bilder, jedoch für Nicht-Bildelemente. Es enthält einige Optimierungsmaßnahmen, da Sie für Screenreader optimiert haben.

http://www.w3.org/WAI/GL/wiki/Using_aria-label_to_provide_labels_for_objects


Wenn Sie jedoch ein Ankertag beschreiben möchten, ist es normalerweise angebracht, das rel- oder rev-Tag zu verwenden. Sie sollten jedoch nicht für lesbare Beschreibungen verwendet werden.

Rel beschreibt das Verhältnis der verlinkten Seite zur aktuellen Seite. (Wenn die verknüpfte Seite beispielsweise die nächste in einer logischen Reihe ist, ist rel = next.)

Das rev-Attribut ist im Wesentlichen die umgekehrte Beziehung des rel-Attributs. Rev beschreibt die Beziehung der aktuellen Seite zur verknüpften Seite.

Eine Liste der gültigen Werte finden Sie hier: http://microformats.org/wiki/existing-rel-values

5
davidcondrey

Ich habe Titel verwendet und es hat funktioniert!

Das title-Attribut gibt den Titel des Links an. Mit einer Ausnahme handelt es sich lediglich um eine Empfehlung. Der Wert ist Text. Die Ausnahme gilt für Stylesheet-Links, bei denen das title-Attribut alternative Stylesheet-Sets definiert.

<a class="navbar-brand" href="http://www.alberghierocastelnuovocilento.gov.it/sito/index.php" title="sito Dell'Istituto Ancel Keys">A.K.</a>
4
Giovanni Python