У меня есть приложение, которое использует тег <mark>
для интерактивного выделения текста. Когда пользователь перетаскивает мышь, она обертывает и разворачивает текстовые узлы в документе, чтобы показать пользователю выбор. Когда выбранный диапазон заканчивается посередине слова, метка окружает только часть слова. Если граница находится между ядерной парой, кернинг отключен.Продолжить кернинг на границах тегов
Вот пример:
p { font-size: 30pt; margin: 0; line-height: 26pt; }
<p>There <mark>are 1</mark>1 entries.</p>
<p>There are 11 entries.</p>
В первом абзаце < метка> тег заканчивается между двумя "1" цифры. Второй абзац имеет тот же текст без знака <>. Размер шрифта, маржа и интервал между линиями настраиваются таким образом, чтобы приблизить абзацы, чтобы сделать различия более заметными.
Больше чем между 1s с отметкой <> чем без. Поскольку это происходит в интерактивном режиме в приложении, поскольку пользователь перетаскивает мышь над 1s, последующий текст сдвигается вправо, когда они находятся между 1s, а затем назад, когда они проходят мимо следующего символа. «Перемешивание» текста может быть раздражающим.
Есть ли способ рассказать обозревателю не для обработки меток в качестве границы кернинга? Может быть, настройка шрифта?
Я подозреваю, что вы правы, что это будет лучшее, что я могу сделать. Я надеялся, что, возможно, будет один из тех менее известных свойств CSS (например, настройка шрифтов, у которых есть несколько простых вариантов), которые будут сообщать обозревателю игнорировать границу в целях кернинга. Понятно, что браузер может это сделать _do_, так как это делает собственное выделение браузера (используйте мышь, чтобы выбрать ту же область, что отмечена в примере, без изменений кернинга), поэтому я решил, что дойду до конца. – scottb