2010-11-04 12 views
5

Ho un frammento di JSF:JSF2 ignora alt vuoto attributo

<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"> 
<!-- Yandex.Metrika --> 
<img src="//mc.yandex.ru/watch/xxx" alt=""/> 
<!-- /Yandex.Metrika --> 
</ui:composition> 

Ma quando lo uso, web-client ottenere pagina HTML whithout attributo alt vuoto elemento IMG:

<!-- Yandex.Metrika --> 
<img src="//mc.yandex.ru/watch/xxx" /> 
<!-- /Yandex.Metrika --> 

Come risultato il mio documento ha errore di convalida (

Come posso risolvere questo problema?

+2

assegnare un valore per l'attributo alt. Qual è il vantaggio di superare i test di validazione W3C senza occuparsi effettivamente dell'accessibilità. –

+1

Potrebbe avere immagini che devono essere saltate dagli screen reader – akostadinov

+1

So che questa domanda è piuttosto vecchia, ma volevo solo sottolineare che i tag alt vuoti sono effettivamente accessibili. Un tag alt potrebbe essere vuoto se l'immagine in questione è descritta nel suo contesto attuale e non fornisce alcuna interazione dell'utente. vedi http://webaim.org/techniques/alttext/#context – gerges

risposta

1

È possibile utilizzare il JSF g componente raphicImage, che rende l'attributo alt vuoto.

Per esempio:

<h:graphicImage value="#{resource['images:image1.png']}" alt="" /> 

o

<h:graphicImage value="http://somedomain.com/somecontext/xxx/image1.png" alt="" /> 
0

Non è sicuro se questo è un problema che JSF2 (JSF1.2 conserva attributi vuoti). Per 'soluzione' che in JSF2, avvolgere codice f:verbatim, in questo modo:

<f:verbatim> 
    <img src="//mc.yandex.ru/watch/xxx" alt=""/> 
</f:verbatim>