Как зайти в Даркнет?!
25th January, 01:11
5
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
893
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6085
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4395
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Ограничения программ чтения с экрана
Я веб-разработчик, и я хочу сделать веб-сайты, которые я разрабатываю, более доступными для тех, кто использует программы чтения с экрана. Какие ограничения есть у читателей экрана, о которых я должен знать больше всего, и что я могу сделать, чтобы избежать этих ограничений.
Этот вопрос был вызван чтением другого вопроса о каптчах, не основанных на изображении . Там комментатор сказал, что поля формы honey pot (поля формы, скрытые с помощью CSS, которые заполнит только бот), являются плохой идеей, потому что читатели экрана все равно их заберут.
Действительно ли программы чтения с экрана настолько примитивны, что они будут читать текст, который даже не отображается на экране? В идеале, не могли бы вы сделать программу чтения с экрана, которая ждала, пока страница не закончит загрузку, применила все css и даже запустила функции Javascript onload, прежде чем она выяснила, что на самом деле отображается, а затем прочитала это выключено для пользователя? Вы, вероятно, даже можете определить части страницы, которые являются меню или оглавлением, и дать какой-то простой способ для этих частей, которые будут прочитаны исключительно или пропущены. Я думаю, что сообщество программистов могло бы придумать лучшее решение этой проблемы.
Действительно ли программы чтения с экрана настолько примитивны, что они будут читать текст, который даже не отображается на экране?
Действительно ли программы чтения с экрана настолько примитивны, что они будут читать текст, который даже не отображается на экране?
Вы должны помнить, что любой парсер HTML не читает экран - он читает источник markup. То, что вы видите на экране, - это попытка браузера применить CSS к исходному коду. Это не имеет значения.
Вы, вероятно, даже можете определить части страницы, которые являются меню или оглавлением, и дать какой-то простой способ для этих частей, которые будут прочитаны исключительно или пропущены.
Вы могли бы, если бы существовал стандарт для такой вещи.
Я не очень горжусь ограничениями чтения с экрана, однако я много читал о том, что они не идеальны. Самое лучшее, что я могу посоветовать, это привести ваш источник в порядок-как вы его прочитали.
Есть набор свойств CSS , которые вы также должны посмотреть для чтения с экрана.
Сколько форм просто имеют * или жирный шрифт, чтобы указать пользователю sight, что поле требуется для правильной подачи? Что делает программа чтения с экрана? Говоря "star"?
Ниже приведен пример кода, который полезен для артикуляции словесно, но не визуально.
(Примечание - В приведенном ниже примере слово "required." произносится, но не отображается на экране)
В шаблоне:
<label for="Requestor" accesskey="9"><span class="required"> Requestor * </span><span class="hidden">required.</span></label>
В CSS:
#hidden {
position:absolute;
left:0px;
top:-500px;
width:1px;
height:1px;
overflow:hidden;
}
или
.hidden {
position:absolute;
left:0px;
top:-500px;
width:1px;
height:1px;
overflow:hidden;
}
Там может быть целый параллельный вид за "seen" в каждом X / HTML страницы.
@robertmyers
CSS содержит звуковой тип media специально для управления "rendering" вещей, когда программы чтения с экрана делают свою работу. Таким образом, для вашего примера вы бы только установили его как видимый для типа aural media.
@Ross
Я вполне осознаю, что программа чтения с экрана на самом деле не читает экран, но вы могли бы подумать, что для хорошей работы ей придется построить модель того, что увидит человек со зрением, в противном случае, похоже, она будет очень плохо работать, чтобы донести до пользователя то, что на самом деле находится на странице. Кроме того, размещение вещей в том порядке, в котором вы их читаете, на самом деле не работает, поскольку зрячий человек быстро просматривает страницу и читает раздел, который он хочет прочитать. Вы ставите контент первым, чтобы пользователь должен был слушать их каждый раз, или вы ставите их в конце, чтобы они могли добраться до контента в первую очередь? Кроме того, приведение контента в порядок означало бы некоторые хитрые CSS, чтобы получить вещи, расположенные там, где вы хотели, чтобы они были для зрячих пользователей.
Мне кажется, что большинство веб-страниц содержат очень похожую конструкцию, и что во многих случаях должно быть возможно выбрать, где находятся повторяющиеся заголовки и боковые столбцы. При просмотре многих последующих страниц на одном и том же сайте с одинаковым форматированием должно быть легко определить, какие разделы являются навигацией, а какие-контентом. При этом программа чтения с экрана может полностью пропустить разделы навигации и перейти прямо к содержимому, как это делает большинство зрячих пользователей.
Я понимаю, что есть ограничения, и что делать такие вещи будет нелегко. Тем не менее, я чувствую, что, насколько читатели экрана идут, мы только сделали голый минимум и оставили его на этом.
@Kibbee,
То, что вы описываете как "primitive", на самом деле является функцией чтения с экрана, которая может использоваться и используется для повышения доступности сайтов. Например, если у вас есть интерфейс с вкладками, реализованный с неупорядоченным списком и элементами списка, то зрячий пользователь обычно видит выбранную вкладку, выделенную другим цветом фона (или какой-либо другой визуальной обработкой). Слепые пользователи не могут этого видеть. Таким образом, добавление дополнительного текста на страницу и скрытие его за пределами экрана-это метод, используемый для сообщения слепому пользователю, какая вкладка активна.
В accessibility lingo эта информация называется ролью, именем, значением и состоянием.
Есть много других сценариев, где этот метод может быть использован для добавления информации, которая полезна для слепого пользователя.
Совсем недавно WAI-ARIA была добавлена, чтобы разрешить эту информацию о состоянии, роли, имени и значении, поэтому теперь вы можете реализовать ограниченное количество виджетов (например, вкладки) с использованием атрибутов HTML. Однако более общий метод "off screen" все еще полезен.