В этом ответе упоминается, что /deep/
может использоваться для выбора элементов по границам DOM теней. Тем не менее, у меня уже есть таблица стилей из темы, которую купил клиент. Можно ли сделать селекторами в таблице стилей по границам DOM теней без изменения самих таблиц стилей? В других местах предлагается использовать applyAuthorStyles
, но это, как представляется, будет удалено из спецификации DOM теней.
Как использовать Polymer с существующей таблицей стилей?
Ответ 1
Так как селектора /deep/and:: shadow были устарели, и вы все равно не хотите изменять существующую таблицу стилей, я бы предложите использовать css @imports в ваших шаблонах компонентов (которые я предполагаю, что вы клонируете и используете в качестве теневых корней), чтобы включить эту внешнюю таблицу стилей. Это по существу сделает этот стиль локальным для ваших компонентов и будет доступен внутри shadow-dom.
Если вы обеспокоены последствиями производительности, см. этот ответ на том же самом.
TL;DR;
С помощью кеширования браузеров, по сути, нет штрафа для многих импорта, на самом деле это скорее всего быстрее, чем каскадирование стилей через несколько теневых деревьев с использованием пробирок.