Использование селекторов Sass’/SCSS’%Placeholder для повторяющегося стиля на одном листе


Пропустить вперед

Освежить информацию о миксинах
Проблема
Решение: Селекторы заполнителей


Освежить информацию о миксинах

Миксин @mixin — это функция At Rule в SASS/SCSS, которая позволяет вам определять стили так, как будто они содержатся в глобальном классе, доступ к которому можно получить из других таблиц стилей.

В качестве основного примера, вы пишете их следующим образом (обычно в таблице стилей под названием mixins.scss):

// mixins.scss
@mixin guest-avatar {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  border: 2px solid orange;
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Чтобы получить доступ к ним из другого места, импортируйте таблицу стилей @mixin и используйте @include следующим образом:

// about.component.scss

@import '../scss/mixins.scss';

img {
  @include guest-avatar;
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Проблема

  • Вы не можете ссылаться на @mixin в пределах одной таблицы стилей
  • Иногда вам нужна повторяемость, чтобы вы могли вносить изменения в стили только в верхней части таблицы стилей (выходя за рамки базовых $variables).

Решение: Селекторы-заместители

С помощью селекторов placeholder вы можете определить тот же псевдокласс с % перед селектором:

// some.component.scss

%rounded-top {
  border-radius: 8px 8px 0px 0px;
  padding: 1rem;
  padding-bottom: 3rem;
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Теперь вы можете ссылаться на селектор в той же таблице стилей, где он был определен:

// some.component.scss

%rounded-top {
  border-radius: 8px 8px 0px 0px;
  padding: 1rem;
  padding-bottom: 3rem;
}

.bottom-sheet {
  @extend %rounded-top;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Вот и все. Вот и все.

Риа

Оцените статью
Procodings.ru
Добавить комментарий