Проблема высокого уровня: стиль шрифта CSS не применяется к одному дефису в пределах диапазона
Мы столкнулись со странной ситуацией в Wordpress, когда очень простой стиль шрифта CSS не работает, когдапытаясь применить этот стиль к одному дефису, предназначенному для диапазона и класса.
HTML-код очень прост:
<h2>Test<span class="angleHyphen">-</span>Heading</h2>
CSS также очень прост:
@import url('https://fonts.googleapis.com/css?family=Sorts+Mill+Goudy');
span.angleHyphen {
font-family:'Sorts Mill Goudy', serif;
}
Проблема уникальна для Wordpress
Если вы запустите этот код в CodePen или на обычной HTML-странице, он будет работать точно так, как вы ожидаете.Тем не менее, он не работает, когда генерируется редактором Wordpress - либо Гуттенберг, либо визуальный композитор.Если вы собираетесь ответить (что я искренне ценю), я бы посоветовал вам проверить это в любой среде Wordpress, прежде чем ответить «Это работает в этом фрагменте кода или стека».
Только проблема при применениик одному дефису
Это кажется уникальным, если дефис быть единственным содержимым промежутка.Если расширить диапазон, чтобы включить весь заголовок, шрифт (включая дефис) будет применен правильно.Другими словами, это работает (хотя и не дает нам нужного нам решения):
<h2><span class="angleHyphen">Test-Heading</span></h2>
Другой подход, который мы пытались проверить:
Еще больше сбивает нас с толку, если мы применяемCSS-атрибут rotate (с префиксами браузера), этот стиль применяется к диапазону с одним дефисом.Другими словами, атрибут font-family не работает, но мы можем несколько эмулировать внешний вид, используя другие атрибуты CSS.К сожалению для нас, основанный на Goudy шрифт является важной частью фирменного стиля клиента, и этот обходной путь не был принят.
Я создал демонстрационную версию проблемы в wptest.4sdesignstudio.com , который также содержит некоторые дополнительные заметки и примеры, если вам интересно или вы хотите потратить время на изучение этого вопроса.
Вы увидите, что нет ошибок консоли.Если вы проверите элемент, вы увидите, что шрифт показывает, что он применяется.Мы включили приведенный выше пример, где мы заключаем весь заголовок в промежуток, показывая, что шрифт корректно загружается через Google Fonts.
Несколько других вещей, которые мы пробовали на основе вчерашних отзывов от Stack(и базовая отладка):
- Добавление дефиса с использованием юникода, шестнадцатеричного кода, HTML-кода и HTML-сущности
- Использование! важное в CSS
- Добавление шрифта-weight, как в @import, так и в качестве атрибута .angleHyphen в CSS (этот конкретный шрифт имеет только один font-weight, поэтому в этом нет необходимости, но у нас нет вариантов).
- Добавление встроенного стиля, как автономного, так и! Важно, чтобы 100% гарантировало, что не было никакого другого перехвата стилей.
- Изменение имени класса на угловой дефис, чтобы гарантировать отсутствиепроблема с учетом регистра из базы данных или иным образом.
- Добавление дефиса с использованием CSS (например, содержимое: "\ 2010")
Мы изначально столкнулись с проблемой в Чиld тема Salient, которая в основном строится с использованием Visual Composer и плагина классического редактора.Чтобы исключить некоторые противоречия, мы загрузили их в новой установке с использованием базовой темы Twenty Seventeen и встроенного редактора Guttenberg (версию, которую вы увидите по ссылке выше).
У меня нет идей для тестирования.Любые предложения приветствуются и приветствуются!Заранее благодарен стек сообщества!