Структура папок проекта SMACSS - Где разместить класс?

Я начинаю следовать принципу SMACSS при написании CSS. Прочитав книгу дважды, я думаю, я хорошо разбираюсь в теории, но теперь у меня возникли некоторые проблемы с практической работой.

В моей базовой папке у меня есть normalize.css вместе с пользовательским сбросом CSS, который для некоторых частей перезаписывается, для других - нормализуется.

Теперь я создал класс, который удаляет все отступы и стиль списка из списка. Так что этот класс зависит от стиля, определенного ранее, но не является ни состоянием, ни модулем для меня.

Куда мне положить такой класс?

2 ответа

По словам Евгения, это должно быть в base в случае, если вы хотите использовать его по умолчанию.

Но другая проблема: если вы не получаете normalize.css через bower, npm или git, вам лучше всего изменить там css, чтобы он соответствовал вашему стилю, а не переписывать правила позже. Это сохраняет ваш размер файла, а также сохраняет специфику на низком уровне и под контролем.

Если вы загрузите его с помощью менеджера пакетов, то все равно будет какой-то постпроцессор uncss который может удалить дублированные правила на этапе постобработки. Это может быть немного сложно настроить, но работает довольно хорошо и может сэкономить много байтов.

Если эта модификация должна быть применена по умолчанию для всех списков (например, сброс) - вам нужно поместить ее в BASE,

Если эта модификация предназначена только для некоторых специальных страниц, используйте THEME,

В других случаях его следует поместить в MODULE, как какой-то базовый класс, как .m-list или подкласс .m-list-plain

Другие вопросы по тегам