Огляд
HTML5 тепер дозволяє <svg>
і <math>
розмічати за допомогою документа HTML, не залежно від зовнішніх просторів імен (гідний огляд тут ). Обидва мають свої alt
аналоги-атрибути (див. Нижче), які сьогодні ігноруються сучасним програмним забезпеченням для зчитування з екрана. Таким чином, ці елементи недоступні для незрячих користувачів.
Чи планується впровадження стандартної конвенції заміщення тексту для цих нових елементів? Я переглянув документи і вийшов сухим!
Далі подробиці
Щодо SVG: альтернативний текст SVG може розглядатися як вміст кореня title
або desc
тегу.
<svg>
<title>An image title</title>
<desc>This is the longer image description</desc>
...
</svg>
Я знайшов один зчитувач з екрана, який читає його як такий, але це стандарт? Попередні методи вставки SVG також мали проблеми з доступністю, оскільки <object>
теги обробляються екранами з непослідовністю.
Щодо MathML: альтернативний текст MathML слід зберігати в alttext
атрибуті .
<math alttext="A squared plus B squared equals C squared">
...
</math>
Оскільки, схоже, читачі з екрана цього не визнають, бібліотека математичного візуалізації MathJax вставляє текст в aria-label
атрибут під час виконання.
<span aria-label="[alttext contents]">...</span>
На жаль, NVDA, JAWS та інші ще не надійно читають ці ярлики. (Докладніше про WAI-ARIA )
Що стосується обох: не маючи успіху з в основному непідтримуваними атрибутами ARIA, я спробував використовувати title
атрибути. Здається, вони також ігноруються для цих "чужих" елементів HTML.
Підсумовування
Більше, ніж швидкий хак, я шукаю рекомендований спосіб розміщення альтернативного тексту на цих нових елементах HTML. Можливо, є специфікація W3C, яку я не помічаю? Або це ще занадто рано в грі?