Gutenberg: Улучшения встроенных границ

Созданный на 8 мар. 2017  ·  3Комментарии  ·  Источник: WordPress/gutenberg

Существуют различные небольшие проблемы с новой логикой границ ссылок/кода, которые необходимо исправить.

  1. Диалоговое окно Fix Link включает zwsp в «Текст для отображения».
  2. Enter at zwsp выдает пустую ссылку нужно подрезать т.е.
  3. Возможно, отвязка не работает, нужны дополнительные тесты.
  4. Удалите zwsp, когда курсор находится в том же текстовом узле, но больше не рядом с символом zwsp.
  5. Добавьте больше тестов для rtl и bidi.
  6. Попробуйте line-height: -moz-block-height; в качестве обходного пути для ошибок рендеринга окон Firefox.
  7. Добавьте возможность отключить эту вещь, если люди думают, что это раздражает.
  8. Попробуйте исправить навигацию на iOS с внешней клавиатурой.
[Type] Task

Самый полезный комментарий

Мы исправили пункты, перечисленные в этом тикете. Так что я закрываю это.

Все 3 Комментарий

Мне нравится эта функция, и я думаю, что она очень помогает понять, где вы печатаете.

Однако при быстром тестировании с помощью Safari 10 + VoiceOver граница ссылки читается как:
link zero width no break space
или что-то в этом роде, извините, здесь не носитель английского языка 🙂

Один из вариантов может быть упомянутым @spoke в Slack :

возможно, потребуется обернуть его в диапазон с тегами aria, а затем

При навигации по символам или словам программы чтения с экрана уже объявляют link при переходе по ссылке, хотя они ничего не объявляют при выходе из ссылки, поэтому, возможно, простое сокрытие символа zwnbsp от вспомогательных технологий может помочь. работать хорошо.

@afercia Провел несколько расследований по этому поводу.

Чтобы курсор не нормализовался в якоре, когда он находится внутри/снаружи, нам нужно вставить что-то, что не позволит браузеру делать это по умолчанию. Мы используем неразрывные пробелы нулевой ширины, потому что это в основном невидимый символ, который больше не используется ни для чего, кроме подписей спецификации в документах. Кажется, что эти символы игнорируются Jaws, но озвучиваются VoiceOver и NVDA.

Я пытался обойти это разными способами:

  1. Изменение символа на спаны с ролями и атрибутами арии не сработало, поскольку атрибуты самодовольно игнорировались большинством программ чтения с экрана. Я предполагаю, что, поскольку это в контексте редактора, это не имеет никакого отношения. Пробовал role="presentation" aria-hidden="true" и aria-label="abc" ничего не произошло, кроме как на Jaws.
  2. Пробовал зарезервированный диапазон юникода \ue000, он зарезервирован для таких вещей, как значки и т. Д., И не должен произноситься программой чтения с экрана. Он не говорит на них, однако он также игнорируется логикой нормализации выбора браузера, поэтому его нельзя использовать.
  3. Добавлен элемент role="status" с aria-live="assertive" и добавлен текст к тому, что в основном делает wp.a11y.speak, и это отменяет очередь в VoiceOver, но не в NVDA, и это кажется немного странным в Jaws. Спецификация говорит, что это может отменить очередь, поэтому я думаю, что это происходит случайно. Однако, вероятно, имеет смысл сообщить пользователю, где находится курсор, если он находится в начале ссылки, в конце, до или после, поскольку это места, которые мы обрабатываем. Однако некоторые скринридеры по-прежнему будут произносить этот странный код символов, не будучи уверены, что мы можем что-то с этим поделать.

Итак, чтобы подвести итог, это сложно. :)

Мы исправили пункты, перечисленные в этом тикете. Так что я закрываю это.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги