@ForestEsprit
HTML - верстальщик

Как в sass создать условие с проверкой на наличие data атрибута?

Можно ли на sass написать условие типа:

if(data-name) {
  .name { display:block; }
}


По сути мне нужно задать правило: если существует такой data-attr, то покажи мне этот блок, а если существует другой data-attr, то покажи мне вторйо блок.
  • Вопрос задан
  • 478 просмотров
Решения вопроса 1
Ваш sass компилируется в css и на этом этапе никаких "блоков" он не видит.
В самом css такие условия сделать тоже невозможно.
Но вы можете реализовать это поведение руками при помощи селекторов:
.first {display: block }
.second { display: none }

[data-name] {
  .first {display: none }
  .second { display: block }
}

У этого способа есть ограничения по структуре дерева элементов, как и у любых других css-селекторов.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы