2015-04-11 4 views
2

Я написал описательные имена файлов, включая дефисы, такие как src="yellow-apple-half-eaten.jpg".Вам нужен атрибут «alt» изображения, если у вас есть описательное имя файла с дефисом?

Нужно ли мне также писать alt="Yellow apple half eaten"?

Также, если вы используете <figure><figcaption> теги, вам также нужно <alt="">?

Это большая проблема, когда у меня есть сотни изображений. Должен ли я решить проблему написания PHP-скрипта, чтобы заменить дефисы пробелами, например, или это не обязательно? Я использую HTML5.

ответ

5

Если у вас нет содержания alt, вам лучше иметь описательное, чем критическое имя файла, поскольку некоторые пользовательские агенты могут использовать имя файла, если им не с чем работать.

Однако это вовсе не означает, что вы можете или должны опустить атрибут alt:

  • Атрибут alt требуется (with exceptions; см также ниже).
  • Не все пользовательские агенты используют имя файла, если нет alt.

    HTML5 не предполагает, что агенты пользователя должны использовать имя файла в таком случае, смотрите раздел под img: «Если атрибут src установлен и атрибут alt не».

    И ни должны markup generators сделать это (хотя это, кажется, не применяется в вашем случае):

    генераторы наценки должны вообще избегать использования собственного имени файла изображения в качестве текста альтернативы.

  • имя файла изображения не обязательно, что делает хороший alt содержание (это не для того, что вы видите на изображении, но то, что его цель в контексте, который может быть очень разные).

  • Не очень удобно читать «yellow-apple-half-eaten.jpg» вместо «Половина съеденного желтого яблока» или даже «Желтое яблоко наполовину съедено».

Если вы не можете предоставить alt содержание, но вы можете предоставить какой-то заголовок, один из исключений может быть для вас:

Вы можете опустить атрибут alt, если вы используете a figure элемент с figcaption (для заголовка изображения). См. conditions.

+0

Хорошо спасибо, я постараюсь включить figcaption для каждого изображения. – Skyfish

+1

@Skyfish: просто чтобы убедиться: вам все равно понадобится * подходящая * подпись, чтобы сделать ее доступной, поэтому вы не «выигрываете» что-либо таким образом (если вы можете сгенерировать заголовок, возможно, вы также можете генерировать ' alt'). – unor

+0

Замечание об использовании атрибута alt относительно присутствия элемента figcaption неверно; информация, указанная в спецификации HTML, находится в контексте поведения, которому должны соответствовать веб-браузеры, а не авторы сайта.Обратите внимание, что веб-браузеры часто упоминаются как «пользовательские агенты» в спецификациях W3C. –

 Смежные вопросы

  • Нет связанных вопросов^_^