如果您有带连字符的描述性文件名,是否需要图像'alt'属性?

Sky*_*ish 4 html5 image alt

我写了描述性的文件名,包括连字符src="yellow-apple-half-eaten.jpg".

我真的还需要写alt="Yellow apple half eaten"吗?

此外,如果您使用<figure><figcaption>标签,您真的还需要<alt="">吗?

当我有数百张图片时,这是一个很大的麻烦.我是否应该解决编写PHP脚本以用空格替换连字符的麻烦,或者这不是必要的吗?我正在使用HTML5.

uno*_*nor 6

如果您没有alt内容,则最好使用描述性而非隐藏式文件名,因为如果没有其他任何内容可供使用,某些用户代理可能会使用该文件名.

但是,这并不意味着您可以或应该省略该alt属性:

  • alt属性是必需的(有例外 ;另请参见下文).
  • 并非所有用户代理都使用文件名,以防万一alt.

    在这种情况下,HTML5并不建议用户代理应使用文件名,请参阅img"如果src设置了alt属性且属性不是"的部分.

    标记生成器也不应该这样做(虽然它似乎不适用于您的情况):

    标记生成器通常应避免使用图像自己的文件名作为文本替代.

  • 图像的文件名不一定是制作好alt内容的原因(它不是你在图像上看到的内容,而是它在上下文中的用途,它可能非常不同).

  • 阅读"yellow-apple-half-eaten.jpg"而不是"半吃黄苹果"甚至"吃掉一半的黄色苹果"对用户不是很友好.

如果您无法提供alt内容,但可以提供某种标题,则其中一个例外可能与您相关:

alt如果使用figure带有figcaption(对于图像标题)的元素,则可以省略该属性.查看条件.