Вёрстка простого макета

Используйте таск-менеджер

Использование таск менеджера, например, Gulp — важнейший элемент быстрой работы над версткой. С помощью таск-менеджера вы сможете автоматизировать такие моменты, как: создание рабочего веб-сервера с автообновлением страницы при сохранении в редакторе кода; удобное использование препроцессоров; автоматизация рутиных задач, таких, как оптимизация изображений, сжатие CSS, JS, если нужно, то и HTML и многие другие задачи.

Вы можете также использовать инструменты типа Prepros, но Prepros — это не Gulp. Для Gulp существует тысячи полезных плагинов — от работы с файловой системой, создания спрайтов, до генерации шрифтовых иконок и многое другое. Очень часто меня спрашивают, в чем разница между Gulp и Prepros, вот вам и ответ. За один раз вы сможете настроить целый комбайн, построить нейросеть задач и пустить по трубам горячую воду, все будет автоматически работать и экономить ваше время при работе над более или менее сложными проектами.

Более подробно изучить Gulp вы можете в уроке Gulp 4 — Актуальное и исчерпывающее руководство для самых маленьких.

Настраиваем логотип

Логотип у нас уже есть и лежит в папке, остаётся добавить его на страницу и отформатировать правилами. И то, и другое можно сделать средствами CSS, чем мы и не преминем заняться.

#logo {
background: #ffffff url(images/big_pic.jpg) no-repeat;
width: 738px;
height: 146px;
text-align: left;
padding-top: 80px;
padding-left: 40px;
border-left: 4px solid #ffffff;
}

Логотип вставлен ровно по размеру.

Единственное, чего ему не хватает, так это текста. Вставим недостающее в блок logo файла index.html, чтобы получилось:

  <div id="logo">
		<h1><a href="#">Имя сайта</a></h1>
		<h2><a href="№" id="metamorph">Слоган сайта</a></h2>
	  </div>

Текст появился, но его тоже нужно оформлять.

Исходя из того, что логотип почти всегда бывает ссылкой, зададим оформление соответствующим классам.

#logo a {
	text-decoration: none;
	text-transform: lowercase;
	font-style: italic;
	font-size: 36px;
	color: #FFFFFF;
}
#logo h2 a
{
font-size: 24px;
}

Пояснять здесь ничего не нужно, со всеми свойствами вы знакомы ещё из уроков CSS. Однако внешний вид текста изменился, и в целом шапка теперь выглядит даже лучше, чем на PSD-макете.

Шрифты

Приоритет использования

  1. Бесплатные шрифты, имеющие веб-версию.
  2. Платные приобретенные шрифты, имеющие веб-версию.
  3. Бесплатные шрифты, не имеющие веб-версии.
  4. Платные приобретенные шрифты, не имеющие веб-версии.
  5. Платные не приобретенные.

Форматы

Веб-версия шрифта включает в себя форматы , , (опционально), , (опционально).

Существует множество конвертеров шрифтов для использования на сайте, однако ни один из них не дает 100% качества: разная высота символов, несоответствие высоты строки в браузере, «рваные» символы, отдельные символы не отображаются.

Лицензии шрифтов

Не стоит использовать шрифты, имеющие лицензионные ограничения (т. е. которые для использования следует купить), не покупая их. Если заказчик настаивает — следует предупредить об ответственности за нарушении лицензии.

Семейства и начертания

Не рекомендуется использовать на сайте более 2 шрифтов и 3 начертаний (, , ) в каждом. Каждое начертание каждого семейства увеличивает время загрузки страницы.

Используемые шрифты приложить к макету (файлы, или ссылки).

Деформации

В Photoshop можно деформировать текстовый блок, например — вытянуть по вертикали, сжать по горизонтали. В верстке скорее всего это будет невозможно.

Переносы

В вебе нет кроссбраузерных переносов. Лучше не использовать переносы слов вообще. Расстановка символов мягкого переноса в тексте возможна, но делать это вручную никто не будет.

Какие макеты мы ищем

Чтобы портфолио выгодно отличалось от конкурентов, а работа с макетами добавила полезные навыки в копилку опыта, желательно, чтобы эти макеты соответствовали следующим требованиям:

  • Макеты на русском языке. Можно брать PSD и на английском, но большинство из них даже отдаленно не напоминают те макеты, с которыми потом придется столкнуться на практике. На Западе немного другой подход к дизайну. Кроме того, есть проблема со шрифтами, не поддерживающими кириллицу;
  • Иметь соответствующую уровню навыков сложность. Поэтому необходим либо выбор из большого варианта макетов, либо они должны подбираться индивидуально.

С требованиями определились, а теперь конкретно по вариантам.

Флексбокс

Классика завтрашнего дня

Мы будем использовать флексбокс, чтобы создать раздел сайта «Бокс-офис«. Вот HTML-код:

<div id="boxoffice">
    <ul class="flex-container">
        <li class="item first">Cinderella: $67.9M</li>
        <li class="item second">Run All Night: $11.0M</li>
        <li class="item third">Kingsman: The Secret Service: $6.2M</li>
        <li class="item">Focus: $5.7M</li>
        <li class="item">Chappie: $5.7M</li>
        <li class="item">McFarland USA: $3.6M</li>
        <li class="item">The DUFF: $2.9M</li>
        <li class="item">American Sniper: $2.8M</li>
    </ul>
</div>

Вот CSS-код для контейнера “boxoffice”:

#boxoffice {
    width: 780px;
    height: 500px;
    background-image: url(../images/box_office_cropped.jpg);
    background-repeat: cover;
    border-radius: 5px;
    padding: 20px;
}

Теперь пришло время создать гибкий контейнер. Для этого нужно задать для элемента display: flex. Согласно правилам верстки, все элементы флексбокса располагаются вдоль главной и поперечной осей:

Для флексбокса задаются два типа свойств. Первый используется для управления гибким контейнером, второй — для заполнения гибких элементов. Рассмотрим подробно первый тип.

По умолчанию, главная ось горизонтальная, поэтому элементы будут растягиваться в ряд. Для изменения основной оси мы можем использовать свойство flex-direction. Оно может принимать следующие значения: row, row-reverse, column и column-reverse. Мы будем использовать значение column. Давайте также добавим свойство height. Для чего это нужно, вы поймете чуть позже:

flex-container {
    height: 300px;
    display: flex;
    flex-direction: column;
}

Вот как выглядит наш небольшой бокс-офис:

Мы использовали свойство height, потому что не хотим, чтобы контейнер флексбокса перекрывал изображение стрелки в нижней части фона.

Флексбокс также дает возможность вносить изменения в содержимое без изменения HTML-файла. Например, если вы хотите поменять расположение элементов на противоположное, вы можете изменить значение flex-direction на columns-reverse. Это изменит направление флексбокса на противоположное. Но вам нужно будет также изменить порядок расположения элементов внутри контейнера.

Для этого мы используем свойство justify-content. Доступные для него значения: flex-start, flex-end, center, space-between и space-around. Для него нужно установить значение justify-content, которое эквивалентно flex-end.

Вот наш код:

.flex-container {
    height: 300px;
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
}

И вот каким образом отразились эти изменения:

Также можно перемещать элементы вдоль поперечной оси. Для этого используется свойство align-items. Вы можете задать для него следующие значения: flex-start, flex-end, center, baseline или stretch.

Чтобы использовать его, добавьте свойство в селектор флексбокса:

.flex-container {
    align-items: flex-end;
}

Все элементы сместятся к правому краю:

Есть еще одно полезное свойство — flex-wrap. Представьте, что бокс-офис быстро увеличивается. Что произойдет, если он станет больше, чем контейнер? Ничего плохого, если вы используете свойство flex-wrap.

Попробуйте добавить следующий код:

.flex-container {
    height: 300px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}

И вот, что в результате получится:

Как видите, элементы теперь укладываются в несколько столбцов. Значение по умолчанию для этого свойства – nowrap. При его применении элементы будут располагаться в один столбец (или строку — это зависит от значения flex-direction). Можно использовать значение wrap-reverse. Тогда элементы будут располагаться в обратном порядке.

Есть много полезных свойств. С их помощью вы можете изменять параметры каждого отдельно взятого элемента контейнера. Например, свойство order позволяет изменять порядок размещения элементов без необходимости вносить изменения в HTML-код.

Поиск в Google и в Яндекс

Неплохой вариант с точки зрения экономии времени. Позволяет быстро найти довольно большое количество PSD макетов, на которых можно потренироваться. Однако шаблоны, найденные через поисковые машины, выглядят очень похоже. Новичку, наверное, не следует добавлять такие работы в своё портфолио, так как в итоге получится, что такие примеры окажутся в коллекциях многих верстальщиков. 

Можно поступить иначе: искать макеты на английском языке в Google. Например по запросу “Free template PSD” можно найти и скачать большое количество бесплатных шаблонов. Но тогда новичок сталкивается с проблемами работы с англоязычными шаблонами, перечисленными выше.

В качестве слабого утешения — для русскоязычных заказчиков ваши макеты могут выглядеть необычно. Впрочем, необычность часто отпугивает.

Скорость печати

После того, как вы подготовили все материалы, экспортировали картинки, сделали шрифтовой Icon Pack проекта, подготовили все иконки, настроили проект, можно приступать к верстке. Думаю, очевидно, что если вы хорошо знаете теги и CSS свойства, узким местом в скорости может быть только скорость набора символов на клавиатуре в процессе HTML верстки и написания CSS свойств. Для прокачки данного скилла более, чем достаточно освоить какой-либо метод быстрого набора символов на клавиатуре. Методов много и эта информация легко гуглится. Занимайтесь, практикуйтесь и все получится. Здесь также немаловажную роль играет практика именно верстки.

Всё уяснили, а теперь…

Помним, что перед началом работы стоит уделить достаточно времени на обсуждение всех деталей, которые упростят и оптимизируют вашу работу

Процесс согласования покажется длительным, но важно чётко определить сроки выполнения проекта. Нет ничего плохого в том, чтобы их завысить, закладывая в оценку риски — незапланированный отпуск, болезнь, сложности при вёрстке, время на дополнительные обсуждения макета

Адекватность рабочего процесса и полноценный результат на выходе зависят только от вашего участия в подготовке проекта к вёрстке. А как бонус — здоровый сон, сильная работа для портфолио и море печенья.

Блочная верстка сайта

Слои, которые создаются с помощью тега div, представляют собой крайне удобные структурные элементы, оформление которых задаётся с помощью таблиц стилей CSS.

Блочная верстка сайта имеет следующие преимущества:

  • Блочная верстка образует гораздо меньший объём кода, в отличие от верстки таблицами, что не только увеличивает скорость загрузки страницы, но и уменьшает нагрузку на сервер;
  • Удобство изменения дизайна путём правки файла стилей;
  • Преимущества в сфере SEO. Вместо кода в первую очередь распознаётся контент и семантически правильно размечается.
  • Повышенная читабельность кода, что способствует соответствию стандартам валидности;
  • Задачи по нестандартному оформлению и расположению элементов веб-сайта могут быть с лёгкостью реализованы;
  • Возможность создать адаптивный дизайн, который будет корректно отображаться как на стационарных, так и на мобильных устройствах.

Несмотря на громадный ряд преимуществ, блочная CSS верстка имеет также и недостатки:

  • Повышенная сложность освоения. Табличную верстку освоить может и новичок, однако таблицы стилей предлагают настолько много различных возможностей, что понадобится немало времени для их изучения;
  • Кроссбраузерность. Решение данной проблемы требует больших усилий, чем в случае с табличной версткой.

Верстка слоями: преимущества, недостатки, сфера применения

Слои – это такие элементы HTML кода, которые внедряются в страницу сайта наложением друг на друга с пиксельной точностью. Изменение параметров слоёв происходят с помощью JavaScript и VBScript, что позволяет использовать различные эффекты.

Достоинствами вёрстки слоями являются:

  • Высокая скорость обработки страниц браузерами;
  • С помощью позиционирования различных слоёв относительно друг друга можно создавать живые и интересные анимационные эффекты;
  • Свойства слоёв настраиваются с помощью CSS;
  • Благодаря поддержке системы декартовых координат, местоположение слоёв на странице сайта можно указать с предельно возможной точностью.

К недостаткам вёрстки слоями можно отнести:

  • Необходимость наличия довольно глубоких познаний языков и технологий веб-программирования (VBScript, CSS, JavaScript);
  • Отображение сайта в различных браузерах может также быть различным;
  • С технической точки зрения верстка слоями похожа на позиционирование, однако во избежание проблем с браузерами, тег следует заменять на <div>.

Вёрстка слоями предоставляет дизайнерам возможность ничем не ограничивать свою фантазию, однако имеет некоторые технические сложности.

Страницы со слоями не имеют единого стандарта отображения браузерами, поэтому одна и та же страница в браузерах Opera и Google Chrome может выглядеть по-разному.

Таким образом, единые общепринятые правила верстки не существуют, и в каждом конкретном случае следует действовать по ситуации.

Однако, табличный метод верстки, несмотря на указанные недостатки, практикуется повсеместно и зарекомендовал себя как максимально надёжный.

КГКонстантин Гиновскийавтор

Что такое вёрстка сайта

Вёрстка – это структура всех элементов на странице документа, сайта или другого информационного носителя. Такими элементами могут быть изображения, заголовки, подзаголовки, таблицы, инфографика и сам текст.

Изначально понятие вёрстки было применимо к издательской деятельности. Книги, газеты, журналы содержат структурированную информацию. В них есть чёткая сетка, блоки, в которых текст и графические материалы упорядочены таким образом, чтобы максимально облегчить читателю процесс потребления информации и заинтересовать его.

Наши продукты помогают вашему бизнесу оптимизировать расходы на маркетинг
Узнать подробнее

Сейчас актуальность вёрстки для издательств сохраняется, но к ним также примкнула и сфера веб-дизайна.

В разработке сайтов вёрсткой называется перевод дизайн-макетов в интерактивный, читаемый браузерами вид. То есть, верстальщик пишет код, который формирует из предоставленного графического шаблона «живую» веб-страницу, с элементами которой может работать пользователь.

В контексте создания сайтов есть два вида разработки:

Back-end — программирование функционала сайта;

Front-end — программирование внешнего отображения и интерактивных элементов сайта.

Вёрстка относится к front-end. Она не отвечает за базовые возможности сайта, например, за регистрацию пользователей, товарную корзину или прочие операции, связанные с вычислениями, внешними и внутренними запросами, хранением и загрузкой данных.

Вёрстка правильно располагает все элементы на странице и делает так, чтобы с ними было удобно работать. Поэтому вёрстка сайта – это ответственная задача, требующая внимательности, терпения и постоянного тестирования. 

Вёрстку веб-страниц невозможно представить без HTML. Если говорить простыми словами, то HTML — это единый стандарт отображения всех элементов веб-страницы. Это язык разметки, с помощью которого браузеры показывают нам порядок, размер, формы и шрифт текста. С его тегами знакомы все, кто занимался созданием сайтов, например:

  • <body> </body> — все содержимое страницы;
  • <h1> </h1> — это обозначение заголовка;
  • <h2> </h2> — подзаголовок;
  • <img> — изображение;
  • <strong> </strong> — жирный шрифт;
  • <a> </a> — ссылка на другой ресурс, но между ними надо поставить атрибут href, который содержит адрес этой ссылки и так далее.

К вёрстке предъявляются особые требования и она бывает нескольких видов.

Разделяй и властвуй (макетом)

С логикой макета и его запчастями разобрались. Но что делать верстальщику дальше? В стандартном рабочем процессе после получения макета верстальщик оценивает стоимость работы и сроки её выполнения. Вот тут и встаёт вопрос о том, за сколько дней, ночей или наносекунд вёрстка будет выполнена без ущерба здоровью исполнителя. Чтобы не сорвать сроки и не включать по ночам космическую скорость вёрстки, следует серьёзней отнестись к оценке рабочего времени. Как адекватно всё осуществить:

Разбить (визуально) макет на основные составляющие блоки. Это может быть шапка, сайдбар, контентная область, подвал, модальные окна.
В каждом полученном блоке проанализировать его компоненты. Стандартный частый набор для шапки — логотип, меню, форма поиска, область регистрации и тому подобное. Отметить для себя, насколько сложным является их осуществление. Например, адаптация многоуровневого меню для планшетов и мобильных, эффект появления вложенных пунктов меню, анимация при наведении на ссылки, кнопки, анимация появления блоков при клике на кнопку регистрации.
Наличие слайдера, галереи, табов, меню-аккордеона и других элементов, которым потребуется JavaScript “вмешательство”. Как долго будет писаться отдельный модуль?
Сложность сетки контентной области. Примеров может быть множество, так как единого стандарта вывода контента нет, но часто встречающиеся это — блок с картинкой и текстом, masonry-сетка, картинка с появляющимся текстом при наведении… Здесь стоит оценить сложность структуры сетки, её гибкость при добавлении большого количества текста, поведение при изменении размера окна браузера.
Содержимое сайдбара. Там может быть меню категорий, баннер с картинкой, виджет социальной сети, фильтр с чекбоксами и прочим

При таком раскладе следует уделить внимание сложности реализации фильтра — чекбоксы, радио кнопки, меню выбора (select), бегунок (range) могут быть кастомными (нестандартными по внешнему виду), структуру меню категорий и его внешний вид на планшетах и мобильных, сложность реализации виджета.
Наличие подвала и его контент. В подвале отлично может продублироваться меню, разместиться копирайт и иконки социальных сетей

Оцениваем сложность структуры и наличие анимационных эффектов.
Фоновое изображение, градиент и другие эффекты, применимые к графике. Стоит подумать, каким образом будут реализовываться градиенты, затемнения, тени, позиция фоновых изображений — при помощи CSS или используя картинки с макета. Что будет менее трудозатратно и более кроссбраузерно?
Анимация — эффекты появления блоков, плавность прокрутки, кнопка “Наверх”, плавность при наведении на ссылки или кнопки, эффект появления блоков при наведении, нажатии. Желательно определить, каким образом будут написаны данные эффекты и сколько времени займёт их написание.
Наличие модальных окон, pop-up’ов, лайтбоксов и прочих скрытых блоков. Будут они написаны вручную или лучше использовать универсальный плагин?
Проверка контента. Зачастую контентом в макете является “рыба”, она же “lorem ipsum”. Дизайнер помещает контент в блок с фиксированной высотой. Но что будет с данным блоком, если текста будет намного больше или всего пару слов? Этот момент стоит обсудить с заказчиком, если в макете не предоставлены блоки с разным количеством контента.

Вышеописанные пункты помогут оптимизировать время и наладить рабочий процесс. Оценив несколько разных по структуре макетов можно научиться более точно определять сроки для вёрстки и не уходить в овертаймы.

Настройка рабочего пространства в программе Adobe Photoshop

Все примеры будут показаны в программе Adobe Photoshop CS5, с интерфейсом на английском языке.

Открыв программу Adobe Photoshop, вы увидите примерно следующее:

  1. Строка главного меню;
  2. Панель параметров;
  3. Панель инструментов;
  4. Дополнительные панели.

Нам нужно настроить набор дополнительных панелей. Для начала зайдите в меню Window – New Workspace:

Введите имя для нового рабочего пространства, например, my workspace, и нажмите Save. Теперь нам нужно выбрать необходимые панели для работы. Заходим в Window и ставим галочки напротив History, Info, Layers, Navigator, Options, Tools. С остальных панелей можете снять галочки, если они установлены.

Теперь нам нужно эти панели закрепить. Для этого кликнете по верхней части панели, и перетащите ее в нужное место, чтобы в итоге ваше рабочее пространство выглядело таким образом:

При появлении голубой прозрачной полоски, отпустите курсор, чтобы закрепить панель в этом месте:

Чтобы закрыть ненужные вкладки, кликнете по иконке в правом верхнем углу вкладки, и в выпадающем меню выберите пункт Close:

Первый макет, который мы будем с вами верстать называется simple_text.psd, находится он в папке templates. Откройте его в программе Adobe Photoshop, для этого зажмите клавиши Ctrl+O (или через меню File – Open), и выберите файл.

Включите линейку при помощи горячих клавиш Ctrl+R или через меню View – Rulers:

Теперь кликните два раза по линейке и откройте вкладку Units & Rulers, чтобы настроить единицы измерения. Выберите в блоке Units для Rulers и Type единицы измерения пиксели:

Теперь все готово, можно начинать верстать макет.

5. Таск-менеджер | Сборщик проектов | Менеджер задач | Ваш личный раб

Вот она рыба мечты. Вот кто настоящий волшебник. Этот комплекс программ для верстки сайтов, реально закроет множество задач верстки сайта и разработки проекта в целом. Gulp, Webpack, — это сборщик проекта для продакшена, здесь минифицируются и объединяются файлы, — HTML, CSS, Javascript. Оптимизируются и ужимаются изображения, так же можно jpeg, jpg, png, переделать в современный формат изображений, — WebP, что даст хороший прирост по скорости заргрузки страниц. Здесь тоже есть большие боссы:

  • Grunt
  • Gulp
  • WebPack

Сам использую Gulp. Grunt немного по медленнее, и на тот момент когда я начинал изучать Таск-менеджеры, был на пике Gulp. Ну и WebPack тоже сильный инструмент, но моё мнение что он больше подходит для SPA проектов, или можно сказать сборщик javascript файлов с поддержкой современных версий ECMAScript.

Gulp который я настроил, закрывает задачи на моих проектах

  • Расставляет префиксы CSS для всех браузеров
  • Минимизирует CSS удаляя пробелы, и переносы
  • Создает файлы .map указывая номер строк браузеру для того что бы дебажить изначальный код
  • Группирует медиа запросы(что бы не повторялись для разных элементов DOM в одной ширине)
  • Преобразует препроцессорный код в обычный CSS
  • Минимизирует изображения
  • Уродует и минимизирует код JavaScript
  • Объединяет все файлы CSS в один(уменьшая количество обращений к серверу)
  • Минимизирует файлы HTML
  • Отслеживает изменения в редактируемых файлах и самостоятельно обновляет браузер во время верстки
  • Конфигурирует файл Smart-Grid

Так же дома на всех устройствах в одной сети я могу посмотреть в реальном времени как выглядит то что я верстаю.Моя сборка Gulp и WebPack

Код Html и Css

Использование разметки html5

Сегодня верстка с использованием разметки html4 используется все реже и реже. Лично я верстаю только, используя разметку html5. Нет, я не имею ничего против html4 и не считаю это прям грубой ошибкой. Просто я такой человек, который привык идти в ногу со временем.

Использование разметки html5 открывает намного больше возможностей верстальщику. Так зачем же тогда использовать устаревшие методы. Признаться честно есть такие люди, которые не любят что то менять, как привыкли работать по старинке, так и работают… Работая в данной сфере, которая развивается катастрофически бурными темпами таким быть нельзя. Если вы такой человек, то я советую вам задуматься — а тем ли вы делом занимаетесь…

Комментарии в коде

Комментарии в коде очень важны. Да, они увеличивают немного вес файла, но лично для меня это не принципиально. Для меня важнее удобство. Следует иметь ввиду, что данным кодом, что вы настрочили могут пользоваться не только вы, но и другие верстальщики. Также здесь же отмечу, что когда вы пишете код, то разделяйте стили отдельными блоками. В роли разделителей как раз будут выступать комментарии. Что значит отдельными блоками? Это значит, что если вы пишете стили для определенного блока на сайте, например, стили сайдбара, то пишите их подряд сверху вниз в одном месте, отделив его от других стилей комментариями — начала кода, конец кода. Вот примерно так:

И удобно, и визуально красиво.

Скрипты и стили только на нужных страницах

Если открыть исходный код любого шаблона, то заметим, что в голове документа (head) бывает подключено много стилей и скриптов. Следует отметить, что страница загружается сверху вниз и соответственно мы не увидим нижний блок, пока не загрузятся все верхние элементы, включая стили и скрипты. Если у вас есть скрипы и стили, которые работают только на определенных страницах, то потрудитесь сделать так, чтобы они загружались именно на данных страницах, а не на всех страницах сайта. Ведь каждый подключенный скрипт или файл стилей уменьшает скорость загрузки страницы. Я уверен в любой cms это можно реализовать на раз, два.

Лишние пробелы в html и css

Иногда открываешь шаблон, в котором уже потрудился так называемый опытный верстальщик и видишь огромные пустые пространства между строчками кода. Зачем создавать такие большие пробелы? Если кто не знает — пробел это тоже символ, а лишние символы увеличивают вес файла. Таким образом, мы тратим бесценные ресурсы на загрузку вот этих самых бесполезных символов.

Многие из вас видели минимизированные версии файлов скриптов или стилей css. Код данных файлов читать практически невозможно, но вот вес файла сжат до минимума. Поэтому, не создавайте лишние пробелы, но в тоже время проследите, чтобы код ваш оставался легко читаемым. В любом случае, с данными файлами Вам придется еще работать.

Порядок подключения скриптов и стилей

В верстке есть определенные правила подключения файлов скриптов и стилей. Сначала всегда в исходном коде документа идет подключение стилей, а потом уже скриптов. Объясняется это тем, что на загрузку и выполнения скриптов тратится больше времени, чем на загрузку стилей. С использованием разметки html5 есть возможность асинхронной загрузки стилей и скриптов. Более подробно об этом можете почитать здесь. Желательно вообще все скрипты по возможности перенести в нижнюю часть страницы, до закрывающего тега

Если на сайте используется библиотека jQuery, то имейте ввиду, что все плагины, которые работают на ее основе должны подключаться всегда ниже, иначе браузер не поймет методы инициализации скриптов.

Устанавливаем базовое форматирование

Теперь перейдём к CSS-оформлению, чтобы задать документу начальное оформление.

Откройте style.css и добавьте туда строки кода, которые встретите ниже.

Убираем отступы и поля на странице по умолчанию:

*
{
margin: 0px;
padding: 0px;
}

Устанавливаем цвета ссылок в зависимости от поведения пользователя (навёл курсор, не навёл, посетил) и убираем подчёркивание у ссылок, над которыми находится указатель мыши:

a:link {
	color: #D72020;
}

a:hover {
	text-decoration: none;
	color: #FF0000;
}

a:visited {
	color: #D72020;
}

Настраиваем основное оформление страницы: прописываем фоновый цвет и изображение-подложку (картинке задаём горизонтальное заполнение), устанавливаем цвет, стиль и размер шрифта:

body {
	background: #FFD723 url(images/back_all.jpg) repeat-x;
	font: 13px Tahoma, Verdana, Arial, Helvetica, sans-serif;
	color: #333333;
}

Определение блока content:

#content {
	margin: 0 auto;
	background: #ffffff;
	width: 786px;
	text-align: left;
}

Вот теперь можно обновить страницу. Она заполнена рисунком-подложкой. Пока единственное видимое изменение, за которое отвечает свойство background класса body.

Создание структуры веб-страницы

Создайте на рабочем столе папку и назовите ее simple text. В этой папке создайте два файла index.html и style.css.

Как вы помните структуру веб-страницы мы создаем на языке HTML. Поэтому сначала открываем файл index.html, и записываем в нем первоначальный код:

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Simple text</title>
    </head>
    <body>

    </body>
</html>

Теперь между тегами создайте блок при помощи тега :

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Simple text</title>
    </head>
    <body>
        <div>

        </div>
    </body>
</html>

Тег является универсальным блочным элементом, и задает на веб-странице блок.

Пропишем в этом блоке элементы, которые присутствуют на макете, а именно заголовок и абзацы:

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Simple text</title>
    </head>
    <body>
        <div>
            <h1></h1>
            <p></p>
            <p></p>
            <p></p>
            <p><em></em></p>
        </div>
    </body>
</html>

Самостоятельно добавьте текст между этими тегами.

Теперь в контейнере пропишите путь к файлу со стилями:

<link rel="stylesheet" href="style.css">

Признаки правильной вёрстки

  • Структура страницы составлена в HTML, в то время как стили вынесены в style.css. В HTML остаются только наименования стилей, присвоенных элементам, но параметры стилям присваиваются в отдельном css.
  • У хорошего сайта при просмотре кода отображается только вёрстка. Функциональный код, например, <?php> и часть javascript вынесена также в отдельные классы, недоступные пользователю.
  • Чистота кода необходима для быстрой проверки ошибок и доработки. Выносите стили и функционал во внешние классы, соблюдайте отступы, не плодите сущности.
  • Правильная вёрстка сохраняет размеры макета. Часто неопытные веб-дизайнеры сильно выходят за заданные ограничения шаблона, и внешний вид страницы отличается от дизайна. Более того, лишние пиксели могут привести к проблемам с адаптивностью, «поехавшей» вёрстке.
  • Используйте методологию Яндекса БЭМ. Она позволяет оптимизировать код.
  • Обязательно соблюдайте кроссбраузерность. Современная вёрстка должна корректно отображаться в популярных браузерах при всех разрешениях: Chrome, Firefox, Opera, Safari. Это требование всегда есть в технических заданиях.
  • Используйте заголовки H1, H2, …, H6.
  • Заполняйте атрибуты элементов: <title>, <alt>, <description>.
  • Сведите к минимуму изображения — всё, что возможно, должно прописываться текстом или кодом, и в последнюю очередь представлено в виде растровых картинок.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector