2013-02-13 7 views

risposta

39

Per ancore, è necessario utilizzare il titolo, invece. alt non è un attributo valido di a. Vedi http://w3schools.com/tags/tag_a.asp

+1

... e http://w3schools.com/tags/ref_standardattributes.asp –

+0

@FabioPoloni Grazie, mi aspettavo che tutti possano trovare il link muggito nella pagina :-) – tomis

+0

Ho pensato che se qualcuno non ne sapeva molto su questo argomento, non lo troverebbe ;-) –

103

Queste cose sono meglio risposto, cercando nella specifica ufficiale:

  1. andare alla specifica: https://www.w3.org/TR/html5/

  2. ricerca per "a elemento": https://www.w3.org/TR/html5/text-level-semantics.html#the-a-element

  3. controllo "Attributi del contenuto", che elenca tutti gli attributi consentiti per l'elemento a:

    012 attribuisce
    • globale
    • href
    • target
    • download
    • rel
    • hreflang
    • type
  4. controllo le connesse "attributi globali": https://www.w3.org/TR/html5/dom.html#global-attributes

Come si vedrà, l'attributo alt non è consentito sull'elemento a.
Inoltre, si noterà che l'attributo src non è consentito neanche.

Entro validating your HTML, errori come questi sono segnalati a voi.


noti che quanto sopra è per HTML5, che è W3C’s HTML standard from 2014. Nel 2016, HTML 5.1 è diventato the next HTML standard. Trovare gli attributi consentiti funziona allo stesso modo. Vedrai che l'elemento a può avere un altro attributo in HTML 5.1: rev.

È possibile trovare tutte le specifiche HTML (incluso lo standard più recente) su W3C’s HTML Current Status.

+2

Non vedo l'attributo 'title' negli attributi' a' Global è giusto usare tale attributo 'title' nel' a' o no? –

+0

@YousefAltaf: su quale pagina guardi? Quello collegato, [Attributi globali] (http://www.w3.org/TR/html5/dom.html#global-attributes), elenca 'title'. – unor

+0

L'ho preso così è elencato sotto gli attributi globali, ma ha effetto sulla qualità della pagina se lo uso o no? –

5

No, un attributo alt (sarebbe un attributo, non un tag) non è consentito per un elemento a in alcuna specifica HTML o bozza. E non sembra essere riconosciuto da nessun browser che abbia alcun significato.

È un po 'un mistero il perché la gente cerca di usarlo, quindi, ma la probabile spiegazione è che lo stanno facendo in analogico con alt attributo per img elementi, aspettandosi di vedere un “Tooltip” al passaggio del mouse. Ci sono due cose che non vanno in questo. Primo, ogni elemento ha attributi propri, definiti nelle specifiche per ciascun elemento. In secondo luogo, il rendering "tooltip" degli attributi alt in alcuni browser antichi è/era un bizzarro o addirittura un bug, piuttosto che qualcosa da aspettarsi; l'attributo alt deve essere presentato all'utente se e solo se l'immagine stessa non viene presentata, per qualsiasi motivo.

Per creare un "tooltip", utilizzare l'attributo title o, meglio ancora, Google per "tooltip CSS" e utilizzare i suggerimenti CSS in base alle proprie preferenze (possono essere caratterizzati come "livelli" nascosti che diventano visibili su passaggio del mouse).

+0

Come utilizzare i collegamenti creati a livello di codice utilizzando le descrizioni dei comandi basate su CSS? –

3

È necessario utilizzare l'attributo title per i tag di ancoraggio se si desidera applicare informazioni descrittive in modo analogo a un attributo alt. L'attributo title è valido sui tag anchor e non serve altro che fornire informazioni sulla pagina collegata.

W3C raccomanda che il valore dell'attributo titolo corrisponda al valore del titolo del documento collegato, ma non è obbligatorio.

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


In alternativa, e probabile che sia più vantaggioso, è possibile utilizzare l'attributo ARIA accessibilità aria-label (da non confondere con aria-labeledby). aria-label ha la stessa funzione che l'attributo alt fa per le immagini ma per gli elementi non-immagine e include una certa misura di ottimizzazione dall'ottimizzazione per gli screen reader.

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


Se si vuole descrivere un tag di ancoraggio, però, di solito è opportuno utilizzare il tag rel o giri ma il vostro limitato a valori specifici, essi non devono essere utilizzati per la descrizione leggibile.

Rel serve per descrivere la relazione della pagina collegata alla pagina corrente. (ad esempio se la pagina collegata è successiva in una serie logica, sarebbe rel = next)

L'attributo rev è essenzialmente la relazione inversa dell'attributo rel. Rev descrive la relazione della pagina corrente alla pagina collegata.

È possibile trovare un elenco di valori validi qui: http://microformats.org/wiki/existing-rel-values

16

"titolo" è ampiamente implementato nei browser. Prova:

<a href="#" title="hello">asf</a> 
+0

Grazie per il suggerimento rapido! – Sohail

+0

Ecco come dovrebbe apparire una risposta al posto della risposta di 10 minuti sopra. Ma questa risposta dovrebbe avere anche il link: https://www.w3schools.com/tags/att_global_title.asp – mikael1000

+0

Sono d'accordo che quanto sopra non risponda alla domanda, tuttavia secondo esso, 'title' non è corretto secondo la specifica HTML5 (anche se la maggior parte dei browser la implementerà). – felwithe

2

Ho usato il titolo e ha funzionato!

L'attributo titolo fornisce il titolo del collegamento. Con un'eccezione, è puramente di consulenza. Il valore è testo. L'eccezione è per i collegamenti del foglio di stile, in cui l'attributo title definisce set di fogli di stile alternativi.

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