Что предпочтительнее использовать в замещающем тексте и или для пользователей программ чтения с экрана?

Услуги & Продукты

or

Услуги и продукты

Обновление:

Как популярные программы для чтения с экрана и текстовые браузеры будут обрабатывать &?


person Jitendra Vyas    schedule 08.04.2010    source источник
comment
Все известные ссылки на объекты заменяются текстом, который они представляют. Таким образом, & заменяется на &, который затем заменяется символом &, который он представляет. Таким образом, & в HTML отображается как &.   -  person Gumbo    schedule 08.04.2010


Ответы (4)


Программы чтения с экрана будут читать «&» как «и», а текстовые браузеры будут отображать его как «&».

Причина, по которой вы пишете &, заключается в том, что "&" является специальным символом в XHTML и должен быть экранирован. Любой браузер/программа чтения с экрана, понимающая XHTML, знает, что & — это экранированный амперсанд ('&'), и отобразит его как таковой или прочитает вслух как "и".

Если вы пишете XHTML-документ, вопрос не в том, как сделать альтернативный текст более удобным для чтения с экрана — вы должны заменить амперсанды на &, иначе ваш документ не пройдет проверку и может отображаться некорректно. .

person meagar    schedule 09.04.2010

В HTML — не имеет значения (поскольку за амперсандом следует пробел).

В XHTML — & является ошибкой правильности и совершенно неприемлема.

person Quentin    schedule 08.04.2010
comment
Это не будет. Браузер проанализирует HTML или XHTML и сгенерирует DOM, который он отобразит. Затем программа чтения с экрана будет читать содержимое экрана с помощью подсказок браузера. - person Quentin; 09.04.2010
comment
Как правило, пишите хороший HTML и не ждите, что программы чтения с экрана потребуют от вас ошибок. - person Quentin; 09.04.2010

Вы должны экранировать простой & ссылкой на символ например &, чтобы иметь действительный XHTML-документ:

Символ амперсанда (&) […] может появляться в своей буквальной форме только при использовании в качестве разделителей разметки или в комментарии, инструкции по обработке или разделе CDATA. Если они нужны в другом месте, их нужно экранировать, используя либо числовые ссылки на символы, либо строки «&» […]

person Gumbo    schedule 08.04.2010
comment
Нужен ли мне действительный документ XHTML для моего обычного веб-сайта? - person Black; 07.02.2019

Всегда избегайте символа амперсанда с помощью правильной кодировки символов. В HTML это или &. В URI это %26, а не два предыдущих. Отсутствие экранирования символов синтаксиса приведет к сбою XML. Если ваш HTML когда-нибудь будет интегрирован или интерпретирован механизмом XML, ваш код сломается.

person Community    schedule 08.04.2010
comment
Правильный код для &%26, а не %38. Обратите внимание, что href="foo%26bar" отличается от href="foo&bar", так как первое объявление значения будет оцениваться как foo%26bar, а второе - как foo&bar. - person Gumbo; 08.04.2010
comment
Вы правы в том, что правильный экран URI для амперсанда — %26, но href=food&bar — недопустимый синтаксис URI. Упомянутый вами побег является результатом предварительной обработки из приложения пользовательского агента, а не рассмотрением самого URI. Вот почему люди обычно ошибочно экранируют символы в URI. - person ; 09.04.2010