Есть ли способ с помощью sass изменить цвет фона кнопки в зависимости от цвета фона ее родителя? - PullRequest
0 голосов
/ 24 мая 2018

В настоящее время я пишу полную библиотеку css для нового проекта.

В данный момент я застрял с чем-то, чего хочу достичь, но начинаю сомневаться, что это даже возможно.

У нас есть несколько разных типов кнопок.Один из этих типов - кнопка, но с двумя возможными цветами фона (сероватый, если на белом bg; беловатый, если на сером bg), я мог бы просто добавить другой класс к кнопке, чтобы указать, должен ли bg быть серым, но я бы не сталЯ предпочитаю это, потому что думаю, что могло бы быть намного более хорошее решение (я также думаю, что это может вызвать проблемы позже, когда мы позволим нашим пользователям выбирать из темной или светлой темы на нашей платформе).

Я также попробовалисправляя это, обращаясь к предкам, чтобы проверить, был ли на них класс, указывающий более темный bg (например, .container-dark) ... Это работает, пока я не помещаю кнопку в контейнер сбелый бг в контейнере с серым бг.В этот момент css все равно найдет предка с классом .container-dark и, таким образом, даст кнопке белый bg, даже если он находится внутри белого контейнера ....

Я также собираюсь установить фон-цвет, равный «наследовать», а затем использовать функцию с if / else, но я не могу понять, как получить доступ к цвету фона кнопок (который он унаследовал в тот момент) ....

Если вы знаете, возможно это или нет, пожалуйста, дайте мне знать, и любые идеи приветствуются!

С уважением

1 Ответ

0 голосов
/ 24 мая 2018

Нет.SASS имеет дело только с генерацией CSS.

Поскольку цвет фона родительского элемента определяется применением CSS к DOM во время выполнения, SASS не может рассчитать его.Он не запускается достаточно поздно.

Для решения этой проблемы вам понадобится JS на стороне клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...