• Как вернуть старый внешний вид карточки товара на Aliexpress?

    jetfx
    @jetfx Автор вопроса
    spaceatmoon, кому нравится тойота, но не нравится дизайн, занимаются моддингом и рестайлингом. Я из тех же людей только в мире Алиекспресс
  • Как заставить стили медиазапросов перебивать вложенные правила(стили) Less?

    jetfx
    @jetfx Автор вопроса
    Благодарю за комментарий. Да, я с вами полностью согласен, что нужно разбивать один большой файл на несколько маленьких, что собственно и делаю. Обычно структура файлов стилей в моих проектах выглядит примерно так:

    60eeff9313f1a219462915.png
    Префиксы "_" перед файлами для сборщика Prepros, чтобы игнорировал в сборке всё, кроме основного файла main.less, а блоки, расположенные в отдельных папках, добавил в игнор отслеживания через графический интерфейс в Препросе

    Потенциально повторяющийся код, будь то: кнопки, панели кнопок и т.п. организую по папкам как блоки (стараюсь придерживаться методологии БЭМ для файловых структур). Однако множество стилей, которые вряд ли где-то ещё пригодятся в проекте (либо других проектах) хоть и именую как блок по правилам БЭМ, но считаю избыточным ради единственного применения обособлять в отдельную папку. Поэтому такие стили группирую по логическим секциям, например, стили секции "о компании" - один файл, стили секции "услуги" - другой, форма обратной связи и контакты - третий. Однако даже такая группировка, порой, создаёт стили с большой вложенностью. Вот пример подобного файла одного из моих лендингов для секции "события" (файл _events.less):
    <section class="events">
            <div class="container">
                <h2 class="events__caption">События</h2>
    
                <div class="events-cards">
                    <div class="events-card">
                        <img class="events-card__img" src="img/events__example-event-1.png" alt="event-example-1">
    
                        <h3 class="events-card__caption">
                            Сесминар КПТ
                        </h3>
    
                        <div class="events-card__bottom-part">
                            <p class="events-card__date">
                                дд.мм.гг
                            </p>
    
                            <div class="events-card__btn">
                                <p class="events-card__btn-text">ПОДРОБНЕЕ</p>
                            </div>
                        </div>
                    </div>
    
                    <div class="events-card">
                        <img class="events-card__img" src="img/events__example-event-2.png" alt="event-example-2">
    
                        <h3 class="events-card__caption">
                            Сесминар КПТ
                        </h3>
    
                        <div class="events-card__bottom-part">
                            <p class="events-card__date">
                                дд.мм.гг
                            </p>
    
                            <div class="events-card__btn">
                                <p class="events-card__btn-text">ПОДРОБНЕЕ</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
    </section>


    .events {
      margin-top: 75px;
    
      .events__caption {
        width: 100%;
        font-size: 36px;
        font-weight: 600;
        color: #6422db;
    
        text-align: center;
      }
    
      .events-cards {
        margin-top: 90px;
    
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    
        .events-card {
          width: 464px;
    
          display: flex;
          flex-direction: column;
          margin-bottom: 70px;
    
          .events-card__img {
            width: 100%
          }
    
          .events-card__caption {
            font-size: 20px;
            font-weight: 400;
            color: #25234d;
    
            margin-top: 19px;
            text-align: center;
          }
    
          .events-card__bottom-part {
            margin-top: 27px;
    
            display: flex;
            justify-content: space-between;
    
            .events-card__date {
              font-size: 18px;
              font-weight: 600;
              color: #0cb3be;
    
              align-self: center;
              margin-left: 25px;
            }
    
            .events-card__btn {
              width: 203px;
              height: 51px;
              background: #0CB3BE;
              border-radius: 26px;
    
              margin-right: 20px;
    
              display: flex;
              justify-content: center;
    
              .events-card__btn-text {
                font-size: 18px;
                font-weight: 700;
                color: #ffffff;
    
                align-self: center;
              }
            }
          }
        }
      }
    }


    Для медиазапросов создаю отдельный файл _responsive.less, куда помещаю все media, чтобы было удобно всё искать в одном месте. Отдельный файл для переменных _variables. Затем все стили собираю в едином файле main.less.