Enroller
@Enroller
Немного авантюрист

Как организовать частичный импорт компонентов CSS кода на LESS?

Здравствуйте

Задумался о том что пора разобрать CSS код в несколько тыс. строк на отдельные компоненты.
Пишу по БЭМ, есть идея организовать следующим образом :

  • Блок
  • Правила отображения на странице (параметры сетки, flex/float св-ва, position)
  • => Иморт файла в котором лежат оставшиеся св-ва блока и св-ва его элементов/модификаторов


Т.е :

mailStyles.less
spoiler
.sliderItem{
              .col();
              .size(12);
              position: relative;
              display: none;
              opacity: 0;
              transition: all 1s linear;
              font-family: 'Arial', Regular, serif;
              @import 'sliderItem.less';
            }

sliderItem.less
spoiler
&__previewPic{
  img{

  }
}
&__social{
  position: absolute;
  top: 20px;
  right:30px;
  display: flex;
  color: @color_white_opacity_50;
}
&__dateAndCapture {
  color: @color_white;
  position: absolute;
  bottom: 50px;
  left: 10px;
  &_d, &_m, &_y{
    font-family: inherit;
    color:inherit;
    font-size: 13px;
  }
  &_capture{
    font-family: inherit;
    color:inherit;
    font-size: 18px;
    margin: 10px 0 0 0;
    line-height: 23px;
  }
 &_date{
  display: flex;
}
}


Как видно, в main файле больше стилей чем предполагает желаемая структура... Но и просто подвесить их в sliderItem.less без селектора нельзя... Компилятор негодует...

Может кто подскажет для галп таска какую-нибудь конструкцию..
Или посоветует другую реализацию такой структуры..

Вобщем жду любой дельный совет и заранее благодарю за участие !
  • Вопрос задан
  • 46 просмотров
Пригласить эксперта
Ответы на вопрос 1
@forspamonly2
не до конца понял чего вы добиваетесь. вроде бы всё перечисленное делается самым простым миксыном.

обернуть содержимое sliderItem.less в миксын (со скобками обязательно) и просто вызвать его внутри блока .sliderItem в mailStyles.less. то есть, заинклюдить все таблицы отдельных компонентов где-нить вверху, а потом примешивать нужные миксыны в конкретные блоки.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы