Если у вас есть блок <kbd>, вы не можете переместить курсор сразу после него, но перед следующим символом.
Видео ниже демонстрирует сложность добавления или редактирования первого символа после блока <kbd>.
Если у вас есть блок <kbd>, вы не можете переместить курсор сразу после него, но перед следующим символом.
Видео ниже демонстрирует сложность добавления или редактирования первого символа после блока <kbd>.
Это «ожидаемое» поведение HTML-поля с атрибутом contenteditable — как внутри, так и снаружи узла в строку считается одна позиция.
Пример с встроенным кодом отлично иллюстрирует альтернативный подход: он отображает псевдо-курсор в этой единственной позиции, поэтому при навигации стрелками курсор остаётся на той же позиции, но с разными атрибутами и слегка смещён визуально.
Я считаю, что идеальным состоянием будет поддержка такого же поведения для других типов контента.
… именно поэтому я по возможности не использую WYSIWYG-редакторы ![]()
(это моё личное предпочтение, которое уходит корнями… на 35 лет назад, к WordPerfect 5.1)
Точно. Они никогда не работают как надо, сколько бы их ни дорабатывали. Я видел подобные ошибки в стольких WYSIWYG-редакторах.