В фактическом оригинальном sass not scss вы можете использовать ниже mixins для автоматического установки абзаца и всех шрифтов заголовков.
Мне нравится, потому что он намного компактнее. И быстрее набирать. Помимо этого, он обеспечивает такую же функциональность. В любом случае, если вы все еще хотите придерживаться нового синтаксиса - scss, тогда не стесняйтесь конвертировать мой sass в scss здесь: [CONVERT SASS TO SCSS HERE]
Ниже я даю вам четыре сасса Примеси.
=font-h1p-style-generator-manual() // you dont need use this one those are only styles to make it pretty
=media-query-base-font-size-change-generator-manual() // this mixin sets base body size that will be used by h1-h6 tags to recalculate their size in media query
=h1p-font-size-generator-auto($h1-fs: 3em, $h1-step-down: 0.3, $body-min-font-size: 1.2em, $p-same-as-hx: 6) // here you will set the size of h1 and size jumps between h tags
=config-and-run-font-generator() // this one only calls the other ones
После того, как вы закончите играть с настройками, просто сделайте вызов на одном микшировании - это: + config-and-run-font-generator () , См. Код ниже и комментарии для получения дополнительной информации.
Я думаю, вы могли бы сделать это автоматически для медиа-запросов, как это делается для тегов заголовков, но мы все используем разные медиа-запросы, поэтому это не подходит для всех. Я использую мобильный подход, основанный на первом дизайне, поэтому я так и сделаю это. Не стесняйтесь копировать и использовать этот код.
КОПИРОВАТЬ И Вставить эти миксы в ваш файл
=font-h1p-style-generator-manual()
body
font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif // google fonts
font-size: 100%
line-height: 1.3em
%headers
line-height: 1em
font-weight: 700
p
line-height: 1.3em
font-weight: 300
@for $i from 1 through 6
h#{$i}
@extend %headers
=media-query-base-font-size-change-generator-manual()
body
font-size: 1.2em
@media screen and (min-width: 680px)
body
font-size: 1.4em
@media screen and (min-width: 1224px)
body
font-size: 1.6em
@media screen and (min-width: 1400px)
body
font-size: 1.8em
=h1p-font-size-generator-auto($h1-fs: 3em, $h1-step-down: 0.3, $body-min-font-size: 1.2em, $p-same-as-hx: 6)
$h1-fs: $h1-fs // set first header element to this size
$h1-step-down: $h1-step-down // decrement each time by 0.3
$p-same-as-hx: $p-same-as-hx // set p font-sieze same as h(6)
$h1-fs: $h1-fs + $h1-step-down // looping correction
@for $i from 1 through 6
h#{$i}
font-size: $h1-fs - ($h1-step-down * $i)
@if $i == $p-same-as-hx
p
font-size: $h1-fs - ($h1-step-down * $i)
// RUN ONLY THIS MIXIN IT WILL TRIGGER THE REST
=config-and-run-font-generator()
+font-h1p-style-generator-manual() // just a place holder for our font style
+media-query-base-font-size-change-generator-manual() // just a place holder for our media query font size
+h1p-font-size-generator-auto($h1-fs: 2em, $h1-step-down: 0.2, $p-same-as-hx: 5) // set all parameters here
КОНФИГУРАЦИЯ ВСЕХ СМЕШИВАНИЙ К ВАШИМ ПОТРЕБНОСТЯМ - ИГРАЙТЕ С ЭТОЙ! :) И ТОГДА ВЫЗЫВАЙТЕ ЭТО НА ВЕРСИИ ВАШЕГО АКТУАЛЬНОГО САСОВОГО КОДА С:
+config-and-run-font-generator()
Это сгенерирует этот вывод. Вы можете настроить параметры для генерации разных наборов результатов, однако, поскольку мы все используем разные медиа-запросы, некоторые миксины вам придется редактировать вручную (стиль и мультимедиа).
GENERATED CSS:
body {
font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 100%;
line-height: 1.3em;
word-wrap: break-word; }
h1, h2, h3, h4, h5, h6 {
line-height: 1em;
font-weight: 700; }
p {
line-height: 1.3em;
font-weight: 300; }
body {
font-size: 1.2em; }
@media screen and (min-width: 680px) {
body {
font-size: 1.4em; } }
@media screen and (min-width: 1224px) {
body {
font-size: 1.6em; } }
@media screen and (min-width: 1400px) {
body {
font-size: 1.8em; } }
h1 {
font-size: 2em; }
h2 {
font-size: 1.8em; }
h3 {
font-size: 1.6em; }
h4 {
font-size: 1.4em; }
h5 {
font-size: 1.2em; }
p {
font-size: 1.2em; }
h6 {
font-size: 1em;
}
Этот инструмент ResEx , унаследованный от Dimitris Papadimitriou, потрясающий.
Функции, которые мне нравятся: