У меня в приложении есть шаблонный CSS Скелет. Он живет в app/assets/stylesheets.
app/assets/stylesheets
├── application.css
├── custom.scss
├── normalize.css
└── skeleton.css
Skeleton использует семейство шрифтов без засечек (с Raleway наверху). Я хочу отменить это.
Итак, мой собственный файл SCSS выглядит так:
@import "skeleton";
body {
font-family: serif;
}
main {
@extend .container;
}
Но шрифт остается без засечек.
Теперь я считаю, что мой пользовательский файл SCSS загружается до Skeleton, потому что без @import "skeleton"@extend .container (.containter определен в Skeleton) не работает.
Я пробовал требовать custom.scss последним в application.css вот так:
*= require_tree .
*= require_self
*= require custom
и вот так со Skeleton и связанным с ним листом нормализации:
*= require_tree .
*= require_self
*= require normalize
*= require skeleton
*= require custom
Но все же я считаю, что мне нужно импортировать Skeleton в свой собственный файл, и я не могу переопределить семейство шрифтов без использования !important.
Что происходит? Правильно ли я полагаю, что моя пользовательская таблица стилей загружается до Skeleton? Как убедиться, что моя таблица стилей загружается в последний раз?






Простым взломом может быть переименование таблицы стилей как-то вроде z.css - таким образом, когда таблицы стилей загружаются в алфавитном порядке, они загружаются в конце. Не верный способ, а хак.
"require_tree." требуются все файлы css в текущем каталоге, попробуйте удалить эту строку
*= require normalize
*= require skeleton
*= require custom
*= require_self
Кроме того, я думаю, что если вы используете @import в custom.scss, вам не нужно добавлять его в манифест конвейера ресурсов, поскольку прекомпилятор sass позаботится об этом
*= require normalize
*= require custom
*= require_self
Лично мне не нравится смешивать @ import из scss с декларациями манифеста из конвейера ресурсов, потому что труднее понять, что и куда помещает.
Я не пробовал, но подозревал, что это может сработать. Я бы хотел сделать это только в крайнем случае.