Иногда бываю ситуации, когда необходимо использовать сетки с фиксированной шириной, вместо обычного использования “резиновых” сеток.
Плагин Susy 2 предоставляет возможность для работы с такими сетками. Но первоначально, необходимо выполнить несколько базовых настроек плагина для того, чтобы начать работать с такими сетками:
Эта статья является третьей частью из серии руководства по плагину Susy 2. Если вы впервые познакомились с плагином Susy 2, то рекомендую начать его изучение с первой статьи - “Краткое руководство по Susy 2”.
Настройка Susy 2 для работы с фиксированной шириной
Для того, чтобы начать работать с фиксированной шириной элементов в плагине Susy 2, необходимо изменить значение одного из его параметров c
на 1
math: fluid
. Также необходимо задать ширину колонки через параметр 1
math: static
, для этого подойдут единицы измерения 1
column-width
, 1
px
или 1
em
. В примере этой статьи будут использоваться пиксели (1
rem
).1
px
Если планируется создавать адаптивную сетку, то значением параметра
необходимо установить число колонок при самом маленьком размере окна браузера.1
column
Для начала создадим новый проект через Compass, указав на необходимость использования плагина Susy в нем:
Затем откроем файл
и добавим в него несколько следующих строк:1
_grids.scss
Создаем в Susy 2 статическую сетку
Шаги по созданию сетки с помощью плагина Susy 2 точно такие же, как если бы создавалась адаптивная сетка (по умолчанию). Первое, что необходимо сделать, это создать блок с классом
. Однако, при этом не стоит забывать, что для статической сетки миксину 1
.container
нужно передать аргумент в виде карты 1
container
через параметр 1
map
.1
$susy
Когда плагин Susy 2 переключен в режим работы с фиксированной шириной сетки, ширина блока-обертки устанавливается в соотвествии с шириной колонки (
), число колонок (1
column-width
) и ширина gutter (1
columns
) также передаются в виде фиксированных величин. (Прим. переводчика: можно сказать немного по другому; все эти параметры с их значениями передаются миксину 1
gutters
через переменную 1
container
):1
$susy
Плагин Susy 2 автоматически высчитает максимальную ширину сетки. Скомпилированный CSS-вид будет выглядет следующим образом:
Единственное различие между статической и адаптивной сеткой заключается в том, в плагин Susy 2 расчитывает максимальную ширину блока-контейнера, в то время как в адаптивной сетке максимальная ширина всегда принимается равной 100%.
Преобразование статической сетки в адаптивную в Susy 2
Создание адаптивной сетки с помощью плагина Susy 2 в режиме статической сетки практически ничем не отличается от того, как это можно делать в адаптивном режиме. За исключением того, что вы уже догадались, это блок-обертка. В данной статье я затрону только изменение самого блока-контейнера. Если необходима более подробная информация об остальных моментах, вернитесь назад, к статье “Краткое введение в Susy 2 (Часть 2)”.
При создании адаптивной сетки ее ширина всегда равна 100%. Поэтому нет необходимости явно ее задавать. Но в данном случае мы все-таки это сделаем.
К счастью, проблем с этим в плагине Susy 2 нет. Ниже показан наилучший метод, который можно только представить.
В каждой из двух контрольных точек производится переопределение ширины блока-обертки путем задания числа колонок, которые будут входить с состав этого блока.
Скомпилированный CSS-код будет таким:
Все работает, но выглядит досаточно неприглядно. Имеются дополнительные
и 1
margin-left
, а также 1
margin-right
; это происходит потому, что блок-обертка был переопределен.1
clearfix
На этом серия статей по Susy 2 завершена.