@@include('_include/page_head.html')
@@include('blocks/page-header/page-header.html')Стартовое состояние проекта содержит ряд блоков и глобальных стилей, описанных и показанных в этом файле. Если некоторые блоки не работают, значит импорт их стилей отключен в файле диспетчера подключений.
Стилизация: теги (см. глобальные стили)
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные ссылки. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.
div
с классом .p
. Далеко-далеко за словесными горами в стране, гласных и согласных живут рыбные тексты. Грустный предупредила, дал приставка составитель решила подпоясал запятых сих ручеек которой власти до, над жизни возвращайся силуэт что не курсивных.<a> |
ссылка, внешний вид |
<strong> |
действительно значимый текст |
<b> |
просто выделенный текст, лид |
<i> |
иностранное слово или термин |
<em> |
эмфатическое ударение |
<s> |
|
<del> |
|
<ins> |
изменение, внесённое в документ (добавление) |
<mark> |
акцент маркерным выделением |
<small> |
малозначимый текст |
<abbr> |
АББРЕВИАТУРА |
<kbd> |
Ctrl + C |
<sup> |
23 |
<sub> |
H2O |
Цитата. Далеко-далеко за словесными горами в стране. Далеко-далеко за словесными горами в стране.
Строчный код: <section>
// Блочный код
// Вторая строка
Стилизация: теги (см. глобальные стили)
Имя | Поросёнок |
---|---|
Фамилия | Пётр |
Отчество | Баракович |
Имя | Фамилия | Отчество |
---|---|---|
Поросёнок | Пётр | Баракович |
Стилизация: БЭМ-блок .table-responsive
Внимание! Адаптивные таблицы требуют добавления дата-атрибутов. Фиксация минимальной ширины имитатора th
будет полезной (делается индивидуально).
Приоритетным является не использование класса .table-responsive
, а использование семантических БЭМ-классов и LESS-примеси .table-responsive(sm);
(принимает в себя значение той ширины вьюпорта, на которой таблица ещё адаптивна).
Стилизация: теги (см. глобальные стили)
Стилизация: БЭМ-блоки и модификаторы. Опирается на стилизацию форм по умолчанию.
Стилизация: БЭМ-блок .btn
и модификаторы.
Приоритетным является подход, в котором используются LESS-примеси .btn()
, .btn-color(цвет_текста; цвет_фона; цвет_бордюра)
и .btn-size([sm|md|lg])
.
Cсылка (lg) Cсылка Cсылка (sm)
Свойства:
ul
или div
с произвольным содержимым.<span role="presentation" class="dropdown" id="test"> <a href="#" class="dropdown__toggler" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Ссылка с выпадающим элементом</a> <ul class="dropdown__menu" aria-labelledby="qwer"> <li><a href="#">Пункт списка (выпадает <code>ul</code>)</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li><a href="#">Separated link</a></li> </ul> </span>
// Факт открытия $('#test').on('shown.nth.dropdown', function () { console.log('shown.nth.dropdown'); }); // Факт закрытия $('#test').on('hidden.nth.dropdown', function () { console.log('hidden.nth.dropdown'); });
Ширины, на которых возможна перестройка блоков проекта:
Переменная | Ширина в px по умолчанию | ID сетки, начинающей срабатывать |
---|---|---|
@screen-xs |
0 | XS |
@screen-sm |
480 | SM |
@screen-md |
768 | MD |
@screen-lg |
992 | LG |
@screen-xl |
1200 | XL |
@screen-xxl |
1800 | XXL |
Стилизация: БЭМ-блоки .row
, .col-[ID]-[COL]
, .col-[ID]-offset-[COL]
Возможные ID сетки: xs, sm, md, lg, xl, xxl (xxl по умолчанию закомментированы). Вдохновлено Bootstrap 4.
.col-xs-12 .col-sm-6 .col-md-4 .col-lg-3
.col-xs-12 .col-sm-6 .col-md-4 .col-lg-3
.col-xs-12 .col-sm-6 .col-md-4 .col-lg-3
.col-xs-12 .col-sm-6 .col-md-4 .col-lg-3
.col-md-2 .col-lg-3
.col-md-10 .col-md-offset-1 .col-lg-9
Приоритетным является подход, в котором вместо упомянутых классов модульной сетки используются семантические БЭМ-овские классы и LESS-примеси (см. файл с примесями).
С примесями можно сделать модульную сетку любой колоночности (на разных ширинах может быть разноколоночная сетка), с любым промежутком между ячейками (на разных ширинах могут быть разные промежутки).
Вызов примеси .col(xs, 12);
(возможно, не 12, а какое-то своё кол-во колонок) обязателен для элементов, являющихся прямыми потомками родителя модульной сетки.
.block-name { .row(); // БЭМ-блок — обёртка элементов модульной сетки &__element { // Разные ширины элемента на разных вьюпортах .col(xs, 6); .col(sm, 5); .col(md, 4); .col(lg, 3); .col(xl, 2); .col(xxl, 1); } }
.block-name { // в примесь можно передать ширину промежутка между ячейками .row(10px); &__first-element { // xs-сетка, 6 колонок из @grid-columns (12 по умолчанию), // промежутки 10px .col(xs, 6, @grid-columns, 10px); } }
Максимально подробный пример:
.root { // При указании переменных подряд имена можно не писать, оставлены для наглядности // @xs-grid-gutter: 1rem; // XS-ширина: указан промежуток между ячейками сетки // @sm-grid-gutter: 1.8rem;// SM-ширина: указан промежуток между ячейками сетки // @md-grid-gutter: 2rem; // MD-ширина: указан промежуток между ячейками сетки // @lg-grid-gutter: 3rem; // LG-ширина: указан промежуток между ячейками сетки // @xl-grid-gutter: 4rem; // XL-ширина: указан промежуток между ячейками сетки // @xxl-grid-gutter: 5rem; // XXL-ширина: указан промежуток между ячейками сетки // Короткая форма указания промежутков для всех ширин: // 1rem; 1.8rem; 2rem; 3rem; 4rem; 5rem .row( @xs-grid-gutter: 1rem; @sm-grid-gutter: 1.8rem; @md-grid-gutter: 2rem; @lg-grid-gutter: @grid-gutter-width; @xl-grid-gutter: 4rem; @xxl-grid-gutter: 5rem; ); &__cuprum { // Для каждого вызова примеси указан промежуток между колонками (совпадает с тем, что у соответствующего вызова .row() для родительского элемента) .col(xs, 1, 2, 1rem); // XS-ширина, 1 колонка в 2-колоночной сетке .col(sm, 2, 5, 1.8rem); // SM-ширина, 2 колонки в 5-колоночной сетке .col(md, 2, 8, 2rem); // MD-ширина, 2 колонки в 8-колоночной сетке .col(lg, 2, @grid-columns, @grid-gutter-width); // LG-ширина, 2 колонки в 12-колоночной сетке (если @grid-columns оставлена по умолчанию) .col(xl, 3, 10, 4rem); // XL-ширина, 3 колонки в 10-колоночной сетке } &__aurum { .col(xs, 1, 2, 1rem); .col(sm, 3, 5, 1.8rem); .col(md, 6, 8, 2rem); .col(lg, 10, @grid-columns, @grid-gutter-width); .col(xl, 7, 10, 4rem); } }
Реальный пример 1:
.root { // Промежуток между колонками будет отличаться только на XS-ширине, это первый // ожидаемый примесью параметр, указываем только его. .row(1rem); &__cuprum { .col(xs, 1, 2, 1rem); // 1 из 2, нужно указать измененный для .row() промежуток .col(sm, 4); // начиная с SM — 4 из 12 (12 по умолчанию, можно не указывать) .col(md, 3); // начиная с MD — 3 из 12 (12 по умолчанию, можно не указывать) } &__aurum { .col(xs, 1, 2, 1rem); .col(sm, 8); .col(md, 9); } }
Реальный пример 2:
.root { .row(); // Промежуток везде одинаковый (берется из переменной) &__cuprum { // Пока вьюпорт не стал равен или шире MD, блок 100% ширины родителя .col(xs, 12); // по умолчанию — 12 из 12 (обязательный вызов примеси) .col(md, 3); // начиная с MD — 3 из 12 } &__aurum { // Пока вьюпорт не стал равен или шире MD, блок 100% ширины родителя .col(xs, 12); // по умолчанию — 12 из 12 (обязательный вызов примеси) .col(md, 9); // начиная с MD — 9 из 12 } }
Стилизация: нет, только примеси.
К нужным элементам добавляем примеси, элементы скрываются на тех или иных ширинах вьюпорта.
В примесях указано только значение display: none;
, без !important
.
.block-name { .hidden-up(lg); // Скрыть на LG (включительно) и более широких .hidden-down(sm); // Скрыть на SM (включительно) и более узких }