Мы начинаем верстку сайта с использованием шаблона:
Для начала возьмите на заметку этот архиватор:

Будем верстать - этот макет:

Скачаем стартовый шаблон:
Распакованный архив переименуем в папку нашей дальнейшей верстки, например:
_html

Здесь сами будем писать mixin
Это кусок кода - или формула

в который можно подставлять свои значения:

Так подключается библиотека bootstrup

Тут можно обновить Node.js

https://nodejs.org/en/download/
или здесь можно скачать:
Далее установим Gulp
Или по сути - мы его обновляем:
Командой:
npm i -g gulp npm-check-updates



Не забываем для MAC - нужно указывать пароль

Хорошо!
И прежде чем устанавливать пакеты (они устаревают)
проверим их актуальность командой: ncu

ОБНОВИТЬ ВСЕ ПАКЕТЫ:

И запускаем команды в таком формате:
gulp - это запуск synk-браузра
gulp build - удаление и сборка проекта


Обновить все пакеты можно командой: ncu -u
но это не точно)
Ну и далее, установим все пакеты: npm i
Отлично!
Теперь введя команду gulp - откроется наш стартовый шаблон:

Не забываем про Git и Bower:

Качать тут: https://git-scm.com/
npm i -g bower
Или установить со страницы

С помощью Bower
мы можем устанавливать необходимые пакеты:
Установим пакет fotorama
bower i fotorama

Установили! Появилась папочка:

Вот так выглядит рабочий пример слайдера fotorama:

ОБЩЕЕ ПРАВИЛО ВЕРСТКИ:
Если что то модно сверстать средствами CSS - лучше сверстать! А не использовать изображения!

Например тут видео о шрифтовых icon-pack:
Стандарт ширины фонов: Width: 1920 px

Для редактирования SVG-logo используем программу

хотя можно использовать и Illustrator

| НАСТРОЙКА ПРОЕКТА |
Настроим шрифты:


Оказывается, существую on-line - конвертеры для конвертирования шрифтов в нужные форматы:


Копируем Fonts - из материалов урока:

Еще о фонт-паках:


Подключаем fonts:

Шрифтов на странице - не увидим!
Поэтому идем в _vars.sass

Прописали - сохранили - РАБОТАЕТ!


Добавим Bold - начертание


И результат:



В html - пропишем тег: <strong></strong>

Смотрим - текст ExtraBold:



Теория MIXIN для подключения шрифтов:
Эта конструкция убыстряет процесс подключения шрифтов:

Посмотрим main.min.css

В Gulp - файле посмотрим:

Выполним: gulp-sass

Получим развернутый css - стиль

Вернем настройки:


Со шрифтами все!
| Переменные _var.sass |
Акцентные цвета:
Откроем Дизайн - файл в браузере - что бы сразу пипеткой брать цвета:






main.sass
Проверим дефолтные настройки для body


И давайте - удалим все демо-данные:

И в index.html - удалим Демо-данные:

Все! Подготовили Макет к верстке!

Для удобства верстки - визуально разобьем секцию
<header> на части:

Меню будем делать с помощью плагина mmenu:
Устанавливать его можно с помощью bower:


Или он уже есть у нас в материалах урока:

Давайте сразу перенесем его в наш проект:

После этого - подключим mmenu в gulp-файл
в наш ТАСК js



Теперь плагин mmenu - необходимо подключить
в _libs.sass

Теперь запустим наш проект:


Давайте обратимся к документации: mmenu
По ссылке: https://mmenu.frebsite.nl/


Код конструкции:
<body>
<div id="my-page">
<div id="my-header"></div>
<div id="my-content"></div>
<div id="my-footer"></div>
</div>
</body>
И вставим код в index.html


Вызывать плагин mmenu - пока не будем!
Вот код вызова (находится там же по ссылке)

Далее: Приведем в порядок наш index.html

Color Picker :


Далее:

Тут исправить! Не "is", а ""
Далее смотрим на наш макет шапки:

Всю шапку - возьмем в тэг header


И давайте загрузим картинки из файлов урока - в наш проект:

и указываем путь к фоновой картинке.

Однако картинка пока не видна!
Поэтому:


И появиться наш фон:


Смотрим:

Далее устраним мелькания при имитации первой загрузки:


и вставим нашу переменную $dark



Ок! Далее)
Посмотрев еще раз на макет:

Отметим, что почти все секции имеют фон-картинкой!
Поэтому сделаем ВСЕ секции с фоновой картинкой
а там где фона не будет, то мы его кастамизируем (но это не точно).
Начнем с каркаса в index.html

Теперь стилизуем секцию и header заодно
И еще стилизуем отдельно секцию с белым фоном (у нашего дизайна есть секции с белым фоном):

Поставили фон на все окно (cover) + по центру:



Продолжим работу над <top-line>

Появилось SVG-лого

Лого пока очень большой)
Будем сразу стилизовать.
Далее: По эскизу отступ у Лого - с верху 40 px


Видим отступ:

Дальше, видим у нас очень сложная структура полосок:
правой панели с соц. сетями.

top-line сделаем position-absolute, что бы он заплывал на вертикальную правую панельку (кнопки соц. сетей)

Уточняем размеры лого:

А по скольку это у нас img (SVG) - то достаточно указать только ширину.

Смотрим Лого с отступами (с верху) и (с лева)

Далее верстаем телефон:

Поэтому подключим FontAwesome в _libs.sass

Скопируем папку со шрифт-паком в наш проект:

Здесь у нас Font Awesome уже адаптированный!
А именно - прописаны ДРУГИЕ ПУТИ до шрифта:
fontawesome-webfont.eot
А если скачивать Font Awesome с официального сайта - то будут другие пути.
Другими словами: Нужно что бы был правильный путь до самого шрифта: fontawesome-webfont.eot


Элементарно! Путь до файла!

Давайте проверим правильно ли мы подключили
Если таких красных сообщений нет - то все ок!

Все подключилось верно!
Далее верстаем телефон:
Перейдем на сайт:




И смотрим - она появилась:


Стилизуем наш телефон:

И что бы телефон не переносился на мобильных устройствах:


Имеем:

Займемся иконкой телефона:
Стиль пишем по классу fa:

Мы покрасили иконку телефона в серый цвет!
Далее:

По ссылке уже готовые анимированные иконки:

https://jonsuh.com/hamburgers/

Давайте скачаем плагин прямо с сайта:


Затем копируем файлик hamburgers.css

Все примеры анимаций Меню-hamburgers, можно посмотреть в файле:



Идем в html - работать над кнопкой:


Смотрим:

Стилизуем его:


Пишем стили:


color: #fff ЗДЕСЬ УБРАТЬ!
Смотрим результат:

Далее анимируем Гамбургер-меню

Давайте сделаем каркас меню:


Далее инициализируем плагин mmenu
Так как он у нас уже подключен:
Причем применяем к id 

Пропишем параметры плагина:

Смотрим:

Давайте добавим эффекты для отъезжающего контента:


Давайте прикрутим лого в шапку отъезжающего меню.

Видим лого в меню:

Сейчас КНОПКА справа, а МЕНЮ слева.

Смотрим:

Далее поработаем над анимацией - ГАМБУРГЕРА:
Смотрите: Сейчас мы используем api .mmenu
- для того что бы создать call-back
для кнопки гамбургера
что бы она меняла свое состояние для положений (open/close)



Если мы переопределяем какие то параметры - лучше их сначала найти в инспекторе, а потом переопределить!

Проверяем - МЕНЮ Гамбургер работает как надо!

Поправим ЛОГО:
Как до него добраться??
Go в Инспектор!
Дело в том - что это лого мы выводили с помощью плагина - и этот плагин добавляет нам ТЭГ: mn-navbar


ОК! ЛОГО вписали!

Добавим отступы с верху-снизу и т.д.
mm-title явно вываливается
за пределы mm-navbar
Давайте поймем почему: проинспектируем
mm-navbar
Потому что у него фиксированная высота: 40 px
Более того, имеет абсолютное позиционирование
и поэтому, он заезжает, на все другие элементы



Не стесняемся - и пере-определяем весь каскад, так как он есть:


Далее:


Далее видим - у нас заезжает все таки title - на само меню:

далее в инспекторе встанем на mm-listview





УБЕРЕМ РАЗДЕЛИТЕЛЬНЫЕ ПОЛОСКИ:
Находим в инспекторе где он формируется:

Убрали:

Но давайте уберем косяк со сролом:

Go в инспектор:

Используем его:

Далее найдем класс mm-panels
- это полностью класс ВСЕЙ ПАНЕЛИ - и просто сдвинем его на 18px в право!
Это стандартное значение скролла!


Убрали скролл - смотрим что получилось:

Дальше убираем линии:
Смотрим в инспектор - НЕ СТЕСНЯЕМСЯ - там все видно!




Смотрим - линии отключены:

Отлично!
Обратим на строки: Первую и последнюю
обычно они могут ОТЛИЧАТСЯ ОФОРМЛЕНИЕМ (Так уж повелось у разработчиков плагинов)
Все ок!
Теперь внимательно посмотрим на пункт меню:




Убрали серый фон у полоски
background-color: transparent
и добавили акцентный цвет:

Это мы подкрасили - ВЫДЕЛЕННЫЙ ПУНКТ - т.е. после нажатия будет светиться.
Давайте также подкрасим АКТИВНЫЙ ПУНКТ
Но тут отдельным блоком кода (не в обще куче переопределенных каскадов) - потому что это уже кастомизация не зависимая от плагина.

Смотрим - у нас еще всегда горит АКТИВНЫЙ пункт:

Кроме того давайте поправим ОТСТУПЫ и добавим в каждый пункт ИКОНКУ:


Смотрим отступы:


Видим:

Добавим иконки:
Go по ссылке:
Здесь можем скопировать Абсолютно любую иконку:

В жопу Сheatsheet
Go в
Ищем иконку - и добываем кодировку этой иконки:

Копируем и вставляем:


Множественные выделения возникают из-за пункта
active - его можно удалить, но он нужен для посадки на CMS


УРОК 5 - Решаем проблемы с mmenu


Для этого - идем на сайт:

Давайте обратимся к документации: mmenu
По ссылке: https://mmenu.frebsite.nl/
Идем >



Давайте посмотрим - что же у нас изменилось то?


Однако! У нас поменялись Хуки!
В общем когда я внес эти изменения в common.js - у меня наоборот все сломалось)
Пришлось вернуть как было! Думаю дело в том что в материалах урока идет немного другая версия плагина mmenu.
Пока ее мне хватает, а если накатывать новую с сайта, то видимо тут нужны эти новые правки по коду.


Все откатил! Меню работает!

ТИП АНИМАЦИИ:

А выбираем анимацию тут:

Лежит тут:

ВЕРСТАЕМ ДАЛЬШЕ:
Сделаем блок текста Приветствия:

Есть некоторые особенности:
Данный текстовый блок - всегда должен быть по центру - между девушкой и левым краем окна:
Реализуем это с помощью FLEX:
Flex - это набор CSS - правил!
Или Модуль CSS - который расширяет возможности CSS.
FLEX-сы старые браузеры - могут не поддерживать.
Лучше их не использовать в ключевых местах верстки: Таких как : сетки, отображения элементов:
А можно - для стилизации каких то элементов.
Go в index.html
Тектовый блок верстаем сразу за top-line

Создадим контейнер для flex:


Установим шрифты для Windows


Откроем файл ЭСКИЗА Abode XD -> Photoshop


В общем - берем половину сетки!
Т.е. верстаем контейнер Bootstrup:

И нам нужно взять - в определенное количество колонок -
Блок текста:

Возьмем блок текста - не в 6, а в 7 - колонок - что бы по шире!

И контейнер для нашей композиции:

Верстаем по частям:


Далее идем стилизовать и заодно все заголовки разом:

Go в main.sass


Пока имеем такую картину:

Продолжаем верстать композицию:

Далее копируем по ссылке:
Гист кнопки: Button Sass Styles (Universal Starter)
И вставляем код кнопки в main.sass



И наша кнопочка появилпсь:

Продолжаем стилизовать нашу КОМПОЗИЦИЮ
Go в самый низ main.sass




Смотрим результат:

Продолжаем стилизацию:


Линии, по бокам заголовка:
Добро пожаловать в профессиональный
Будем делать при помощи FLEX:

Теперь начинается магия БОКОВЫХ ЛИНИЙ -
оформим их при помощи ::before и ::after

И смотрим на новенькие ЛИНИИ:

Давайте стилизуем class h1
Но вначале посмотрим на Дизайн и проинспектируем заголовок
- на предмет ОТСТУПОВ!



Стилизуем иконки:

Результат:


Далее стилизуем текст в композиции:
НЕ НУЖНО ДОБАВЛЯТЬ ПЕРЕНОСЫ В ЭТОМ ТЕКСТЕ - ПОСКОЛЬКУ У НАС RESPONSIVE-САЙТ. Будет адаптироваться под различные экраны.














