2010-01-28 7 views
6

Qual è il vantaggio di aggiungere null alt = ""? è solo per passare la convalida o ha più ragioneQual è il vantaggio di aggiungere alt = "" vuoto? e quale alt dovrebbe essere usato questo alt = "" o alt = ""?

e come dovrebbe essere scritto?

come questo, nessuno spazio

alt="" 

o questo con uno spazio vuoto

alt=" " 
+1

Il titolo dovrebbe probabilmente leggere "vuoto" anziché "null", perché "null" a volte ha un significato specifico, non vuoto-stringa nella rappresentazione dei dati (incluso Javascript, ma HTML escluso); e hai già illustrato il tuo significato con le virgolette vuote. – Anonymous

risposta

4

Altre risposte hanno evidenziato i requisiti dello standard. Ecco un esempio pratico:

Dato testo vuoto alt, la lince renderanno:

Dato un attributo alt mancante, la lince renderanno:

filename.jpg

Non vuoi il tuo conte per avere nomi di file irrilevanti sparsi dappertutto.

+0

e quale metodo è corretto per aggiungere null alt? e come lo schermo si comporterà con il tuo esempio –

+0

L'uso di uno spazio è, IIRC, per evitare errori in alcuni vecchi software. Gli screen reader si comportano diversamente (a seconda di quale screen reader e come è configurato). Alcuni diranno all'utente che c'è un'immagine, altri salteranno su di esso, alcuni probabilmente permetteranno all'utente di ottenere informazioni sul nome del file. – Quentin

+0

il tuo suggerimento era giusto. se usiamo alt = "" allora IE fornisce un suggerimento vuoto al passaggio del mouse –

6

per ottenere il vostro XHTML convalidato. L'alt è un attributo obbligatorio per le immagini.

Aggiungerlo vuoto è comunque un segno di pigrizia da parte dei programmatori (anche se ammetto che lo faccio anche per le immagini che non sono fondamentali per la navigazione del sito come piccoli elementi decorativi e così via).

P.S. Se hai elementi decorativi come i componenti ombra, alcuni ornamenti puoi aggiungerli non con le immagini ma come sfondo CSS, evitando così la necessità di scrivere un testo alternativo e di tenere pulito il tuo markup di materiale non contenuto.

+0

È anche obbligatorio per HTML. – Joey

+0

Forse tra un paio di decenni la convalida diventerà molto più dura e richiederà una stringa non vuota. Questa potrebbe essere la corsa agli armamenti tecnologici più eccitante della storia. –

+0

Non credo che sia sempre il caso che sia la pigrizia - ci sono immagini (spaziatori, bordi, ecc.) Che non vuoi assolutamente leggere perché sono per lo più solo decorazioni e non contribuiscono al contenuto quindi devi essere in grado di contrassegnare quelli che devono essere ignorati da un lettore. Purtroppo questo non è qualcosa che conosco abbastanza vicino (ancora), quindi gradirei più commenti ... – Murph

3

Per le immagini che non hanno un testo alternativo adatto (vale a dire immagini che non portano alcuna semantica, come elementi decorativi), l'attributo alt deve essere vuoto. Vuoto significato vuoto, non un singolo spazio (che è una convenzione e una raccomandazione ma una buona).

L'attributo alt deve essere specificato per gli elementi IMG e AREA. È facoltativo per gli elementi INPUT e APPLET.

Mentre il testo alternativo può essere molto utile, deve essere gestito con cura. Gli autori dovrebbero osservare le seguenti linee guida:

  • Non specificare testo alternativo irrilevante quando l'inclusione di immagini destinate a formattare una pagina, ad esempio, alt="red ball" sarebbe inappropriato per un'immagine che aggiunge una palla rossa per la decorazione di un titolo o di un paragrafo. In questi casi, il testo alternativo dovrebbe essere la stringa vuota (""). Gli autori sono comunque invitati a evitare l'uso di immagini per la formattazione delle pagine; dovrebbero invece essere usati fogli di stile.
  • Non specificare un testo alternativo senza significato (ad es. "Testo fittizio"). Non solo questo frustrerà gli utenti, ma rallenterà i programmi utente che devono convertire il testo in parlato o l'output in Braille.

Gli implementatori devono consultare la sezione sull'accessibilità per informazioni su come gestire casi di testo alternativo omesso.

- HTML 4 specification. Section 13.8 How to specify alternate text

+0

è null alt solo per la convalida? –

+0

L'attributo è * obbligatorio * per gli elementi 'img'. Quindi sì, in un certo senso, questo è per consentire la convalida dei documenti pur garantendo che non venga introdotto alcun inutile disordine per il lettore di immagini senza significato. – Joey

+0

u significa che lo screen reader bypasserà null alt? –

0

aggiungerò questo come una risposta così (originariamente un commento su un'altra risposta), dal momento che tipo di senso di farlo.

Le immagini utilizzate per lo stile della pagina (e quindi non hanno un reale utilizzo "alt") devono essere inserite tramite CSS e background-image e relativi parenti, non tramite markup. In questo modo fai due cose buone contemporaneamente. Mantieni il tuo design nei tuoi fogli di stile e tieni il codice non simmetrico fuori dalla tua pagina.

Anche se penso che "la semantica sia dio" - il movimento non è riuscito a vedere il fallimento che è div e span, e l'ambiguità intrinseca che producono, continuo a pensare che un div con background-image sia migliore di un tag img per lo styling.

+2

Non dimenticare il terzo caso: immagini che illustrano il contenuto. Non aggiungono significati significativi, ma sono contenti. (ad esempio, un grafico che mostra i dati in una tabella in modo visivo o un'immagine di una persona di cui un articolo discute). Questi non sono elementi di progettazione, ma non dovrebbero avere neanche il testo alternativo. – Quentin

+0

Certo che dovrebbero.Un elemento alt descrive ciò che l'immagine contiene, in modo che coloro che non possono renderizzare le immagini (o usare screen reader) sappiano cosa c'è. "12215426.jpg" non dice loro nulla, mentre "Obama tiene un ombrello" o "La carta che dettaglia le vendite nel corso dell'ultimo anno" dice loro cose. L'elemento alt dovrebbe essere qualunque sia la didascalia dell'immagine o qualcosa di semplificato se l'immagine ha effettivamente una didascalia. –

+2

"Obama tiene un ombrello" o "La carta che dettaglia le vendite nell'ultimo anno" non dice loro cose * utili * e non ha senso se si utilizza un browser di testo. Il testo alternativo è un'alternativa a, non una descrizione di. È necessario assicurarsi che le informazioni che l'immagine è progettata per trasmettere sia nel documento, non è necessario comunicare all'utente ciò che non possono vedere (anche se a volte è utile, ma questo è ciò che 'longdesc' l'attributo è per). – Quentin