【问题标题】:JSF2 ignores empty alt attributeJSF2 忽略空的 alt 属性
【发布时间】:2010-11-04 00:17:22
【问题描述】:

我有一个 jsf sn-p:

<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>

但是当我使用它时,web-client 得到的 HTML 页面没有 img 元素中的空 alt 属性:

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

因此我的文档有验证错误(

我该如何解决这个问题?

【问题讨论】:

  • 为 alt 属性赋值。通过 W3C 验证测试而不实际处理可访问性有什么好处。
  • 他的图片可能会被屏幕阅读器跳过
  • 我知道这个问题已经很老了,但我只是想指出空的 alt 标签实际上是可访问的。如果相关图像在其当前上下文中描述并且不提供任何用户交互,则 alt 标签可能为空。见webaim.org/techniques/alttext/#context

标签: jsf-2 image glassfish-3 alt


【解决方案1】:

您可以使用 JSF graphicsImage 组件,它会呈现空的 alt 属性。

例如:

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

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

【讨论】:

    【解决方案2】:

    不确定这是否是 JSF2 中的错误(JSF1.2 保留了空属性)。 要在 JSF2 中“解决”该问题,请使用 f:verbatim 包装代码,如下所示:

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

    【讨论】:

      猜你喜欢
      • 2011-04-13
      • 2018-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-28
      相关资源
      最近更新 更多