Должна ли Visual Studio 2008 выдавать ошибку доступности (508) при макете, полностью управляемом таблицей?

Я пытаюсь убедиться, что моя работа все больше и больше совместима с 508 в эти дни, но заметил, что VS2008 не выдает ошибку, если у вас есть 100% табличный макет вместо css.

Я всегда думал, что для совместимости с 508 вам нужно отказаться от идеи «таблицы для макета»…

Если это правда, как я могу заставить студию делать эти ошибки вместо предупреждений?


person Toran Billups    schedule 09.01.2009    source источник


Ответы (5)


Проблема в том, что VS2008 не понимает намерения. Даже под 508 правильно использовать таблицы для представления табличных данных. Компилятор может посмотреть на макет и увидеть, что он включает в себя сложно вложенные таблицы, но не может определить, является ли его использование неправильным.

person Yes - that Jake.    schedule 09.01.2009
comment
Ха! намерение было словом, которое я искал +1 - person Kev; 09.01.2009
comment
хороший момент, поэтому разработчик должен знать об этом и избегать таблиц для макета (очевидно, что табличные данные все еще действительны) - person Toran Billups; 09.01.2009

Я не верю, что использование или неиспользование таблиц для макета делает ваш сайт совместимым с 508 или нет. Это зависит от того, есть ли у вас теги title и alt для ячеек таблицы, изображений, ссылок, не зависите от Javascript и т. д.

person Sarel Botha    schedule 09.01.2009
comment
508 также любит, чтобы у вас были хорошие заголовки тем, а также элементы навигации и элементы в правильном порядке, который часто нарушает макеты таблиц. - person Joel Coehoorn; 09.01.2009

Таблицы по-прежнему являются правильным и допустимым способом отображения таблиц данных.

person Kev    schedule 09.01.2009

Поскольку вы пишете здесь «макет, управляемый таблицей на 100%», ошибка будет правильной. Макет НЕ следует делать с помощью таблиц, а вместо этого использовать теги DIV. Мир дизайна, принявший стандарты CSS, сходит с ума, когда что-то не спроектировано должным образом с помощью DIV, поскольку они ненавидят макеты TABLE.

person Adron    schedule 09.01.2009

На самом деле, раздел 508 (и даже рекомендации WCAG) не запрещайте явно таблицы для макета. Этого следует избегать, но если это невозможно (я полагаю, из-за устаревших систем), то таблица в порядке, если она читается так же линейно, как и при представлении в виде таблицы.

Еще одна вещь, которую я узнал, заключается в том, что разметка таблицы макетов должна избегать определенных элементов таблиц данных, особенно тегов th, поскольку это может перевести программу чтения с экрана в режим «таблиц», что может испортить всю линеаризацию.

Итак, настоящая причина, по которой VS ничего не делает, чтобы предупредить вас, заключается в том, что, как сказал @Jekke, он не может определить контекст.

person Don Zacharias    schedule 25.05.2011