Как использовать Polymer с существующей таблицей стилей?

В этом ответе упоминается, что /deep/ может использоваться для выбора элементов по границам DOM теней. Тем не менее, у меня уже есть таблица стилей из темы, которую купил клиент. Можно ли сделать селекторами в таблице стилей по границам DOM теней без изменения самих таблиц стилей? В других местах предлагается использовать applyAuthorStyles, но это, как представляется, будет удалено из спецификации DOM теней.

Ответ 1

Так как селектора /deep/and:: shadow были устарели, и вы все равно не хотите изменять существующую таблицу стилей, я бы предложите использовать css @imports в ваших шаблонах компонентов (которые я предполагаю, что вы клонируете и используете в качестве теневых корней), чтобы включить эту внешнюю таблицу стилей. Это по существу сделает этот стиль локальным для ваших компонентов и будет доступен внутри shadow-dom.

Если вы обеспокоены последствиями производительности, см. этот ответ на том же самом.

TL;DR;

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