Size: a a a

2021 February 17

EI

Eugene Ilyin in Svelte [svelt]
Arushwl
в global.css заготовил блоки, типа:

.light { --var: foo }
.dark {--var: baz }
Это как раз с CSS Vars
источник

A

Arushwl in Svelte [svelt]
ну да
источник

EI

Eugene Ilyin in Svelte [svelt]
Dan Kozlov
Ну так ладно, а подход с перезаписью селектора для поддерева вы поняли? Оно отчасти решает вашу задачу, хотя костылище тот еще.
То есть берется какой-то корневой селектор .theme {cikir: red} и потом при нажатии на кнопку ему делается перезапись на .theme: {color: blue} и все кто наследует .theme color используют цвет или можно class="theme ..."
источник

DK

Dan Kozlov in Svelte [svelt]
Тут просто задача странная в том смысле, что вам и CSS-in-JS не поможет. Вы же хотите стиль подключать в head, а потом его значение переделывать.
источник

EI

Eugene Ilyin in Svelte [svelt]
Arushwl
ну да
Ну нет но без css-vars, для этого есть svelte themer
источник

A

Arushwl in Svelte [svelt]
я ручками люблю
источник

DK

Dan Kozlov in Svelte [svelt]
Eugene Ilyin
То есть берется какой-то корневой селектор .theme {cikir: red} и потом при нажатии на кнопку ему делается перезапись на .theme: {color: blue} и все кто наследует .theme color используют цвет или можно class="theme ..."
источник

EI

Eugene Ilyin in Svelte [svelt]
Dan Kozlov
Тут просто задача странная в том смысле, что вам и CSS-in-JS не поможет. Вы же хотите стиль подключать в head, а потом его значение переделывать.
Да переделывать через JS, чтобы обойти ограничение статических стилей.
источник

КС

Кирилл Спасибович... in Svelte [svelt]
А если 1 компонент собирать с динамической подгрузкой стилей, и в нем этот класс написать ?
источник

КС

Кирилл Спасибович... in Svelte [svelt]
Он тогда стайл тег создаст
источник

EI

Eugene Ilyin in Svelte [svelt]
Спасибо за пример, но это породит каскад всех вариантов всех возможных тем.
источник

КС

Кирилл Спасибович... in Svelte [svelt]
И по нажатию кнопки инстанциировать его
источник

EI

Eugene Ilyin in Svelte [svelt]
Кирилл Спасибович
И по нажатию кнопки инстанциировать его
Да вот я как раз об этом и думал, но это порождает все возможные компоненты для всех возможных тем
источник

DK

Dan Kozlov in Svelte [svelt]
Eugene Ilyin
Спасибо за пример, но это породит каскад всех вариантов всех возможных тем.
Дык.
Вам нужен CSS-in-JS без css-переменных и с SSR. Так нельзя, вроде бы :)
источник

КС

Кирилл Спасибович... in Svelte [svelt]
А для ssr/ssg будет дефолтный стиль перебиваемый этим классом
источник

КС

Кирилл Спасибович... in Svelte [svelt]
Тока вот всё равно же нужна будет тема
источник

EI

Eugene Ilyin in Svelte [svelt]
Вообщем остановимся на Emotion SSR + Svelte SSR  в два разных head style css  + дергание Emotion Client JS для переключения тем
источник

КС

Кирилл Спасибович... in Svelte [svelt]
Тут тока несколько css бандлов походу
источник

КС

Кирилл Спасибович... in Svelte [svelt]
С запеченными темами
источник

EI

Eugene Ilyin in Svelte [svelt]
Кирилл Спасибович
С запеченными темами
Не это жесть там слишком много степеней свободы, чтобы под каждый вариант свой банд с темами городить
источник