Создание сайта от начала до конца: Создание сайта от начала и до конца: книга от Михаила Русакова – Создание сайта от начала и до конца

Содержание

Создание сайта от начала и до конца: книга от Михаила Русакова

С помощью книги Михаила Русакова, Вам предстоит воспользоваться рекомендациями автора и заняться разработкой собственного сайта, не имея специального образования, знаний и опыта. Благодаря пошаговой инструкции вы научитесь выполнять работу профессионального Web-дизайнера.

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

  1. Программирование.
  2. Дизайн и структура сайта.
  3. Размещение в сети интернет.
  4. Верстка.

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

Преимущества книги:

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

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

Результат от прочтения:

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

Создание веб-сайта. Курс молодого бойца / Habr

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

Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:

Данный этап можно разделить на несколько подэтапов:
  • Создание идеи
  • Разработка структуры проекта
  • Проработка макета проекта

Создание идеи


На данном этапе нам необходимо определиться с тематикой проекта (сайта, сервиса). Далее, в соответствии с выбранной темой, необходимо собрать соответствующие материалы: текстовые, графические.

Разработка структуры проекта


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

Проработка макета проекта


После того, как мы определились со структурой проекта можно составить макет проекта (схематично).

Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.

Основные элементы страницы


Зачастую основными элементами страницы являются: содержащий блок (wrapper, container), логотип, навигация
, контент, футер (нижний колонтитул), свободное пространство (по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).

Содержащий блок (контейнер)

Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип

Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация

Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент

Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Нижний колонтитул (footer)

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

Резиновый и фиксированный макет


Фиксированный макет

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

«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.

В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (Responsive Web Design aka. RWD) и адаптивный веб-дизайн (Adaptive Web Desing aka. AWD). Первое понятие укладывается в концепцию «резинового» и означает, что при изменении размера экрана ваш сайт подстраивается под него, второе понятие подразумевает, что при разработке вы определяете основные разрешения (размеры экрана), под которые будет подстраиваться (адаптироваться) ваш контент. В обоих случаях следует разрабатывать не один, а несколько макетов, которые будут соответствовать разным разрешениям экрана. Часто создаётся 3 макета под разрешения iPhone (Android Phone), iPad (Android Tablet) и Desktop.

На данном изображении показаны оба подхода. Сверху блок «отзывается» на любые изменения размера контейнера, снизу «адаптируется» под определённую ширину

Полезные ссылки по теме:


Почему при «резиновом» дизайне создаётся несколько макетов, а не используется один?


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

Модульная сетка


Перед составлением схемы проекта так же необходимо уяснить понятие модульной сетки. Модульная сетка подразумевает под собой разделение страницы на отдельные колонки по вертикали и выстраивание контента, при разработке дизайн макета, именно по этой сетке.

Наиболее популярной системой является модульная сетка 960 Grid System (http://960.gs), которая максимально делит страницу на 12, 16 и 24 колонки. Максимум в ширине сетка имеет 960 пикселей. Данное решение основано на том, что большинство современных мониторов, на момент создания сетки, имели разрешение не меньше 1024 на 768 пикселей. Создание макета на основе данной сетки, в дальнейшем, поможет ускорить процесс разработки (вёрстки).

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

Модульная сетка 960GS отвечает концепции «фиксированного» дизайна, для «резинового» дизайна можно обратить внимание на адаптацию этой же сетки на сайте http://www.designinfluences.com/fluid960gs/ или воспользоваться сеткой, которую предлагает фрэймворк Bootstrap (http://getbootstrap.com/css/#grid).

Благодаря модульной сетке блоки контента и элементы будут располагаться на определённом расстоянии друг от друга, будут иметь удобоваримую ширину, что в дальнейшем визуально будет приятно пользователю и не будет вызывать у него какие-либо неудобства в восприятии сайта.

Модульная сетка, по сути, – это некая визуальная абстракция, визуальное деление страницы на равные по ширине столбцы с равными отступами между ними. Визуализировать данную модель можно посредствам направляющих или отдельного слоя, на котором будут изображены эти столбцы. Именно такое решение вы найдёте в шаблонах сетки 960gs.

Полезные ссылки и материалы:


Макеты веб-страниц


Среди всего многообразия составления макета веб-страницы можно выделить четыре наиболее распространённых:
  • Навигация в левом столбце

  • Навигация в правом столбце

  • Навигация в трёх столбцах

  • Горизонтальная навигация. На данном этапе сайты с таким типом навигации составляют большинство. Удобство такого подхода легко объяснить тем, что в данном случае у нас остаётся больше пространства для контента, составляющего наш сайт.


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

Mobile First


С учётом тенденций последних лет данный подход плотно занимает свою нишу в разработке и дизайне сайтов. Тенденция такова, что практически около 60% пользователей интернета используют для доступа в сеть мобильные устройства, поэтому правилом хорошего тона становится разработка не только десктопной версии сайта, но и мобильной версии. При использовании данного подхода разработка макета сайта, дизайна и вёрстки начинается с мобильной версии, а затем уже прорабатываются макеты для других разрешений: добавляются блоки, баннеры, дополнительные элементы дизайна и пр.

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

Усвоив всё вышесказанное можно переходить к следующему этапу – Дизайн.


После создания макета проекта можно переходить непосредственно к созданию дизайн-макета. На данном этапе начать стоит с определения цветовой гаммы проекта.

Один из способов определения основного цвета в проекте – это составление mood board. Для этого необходимо выписать себе все синонимы, связанные с темой проекта, а затем каждый синоним набрать в поиске по картинкам Google или Yandex. На основе найденных изображений выписать себе цвета, которые чаще всего встречаются на них (каких цветов больше). Найденные цвета будут составлять визуальное восприятие нашего проекта и вызывать у пользователя соответствующие чувства.

Для работы с выбранным цветом и составлением палитры цветов нашего сайта можно использовать следующие инструменты:

  • Color Scheme Designer 3 (http://colorschemedesigner.com/csd-3.5/). Помимо выбора цветовой схемы данный сервис позволяет посмотреть пример того, как выбранные цвета будут смотреться на сайте

  • Adobe Color CC (https://color.adobe.com/ru/). Данный ресурс, в отличие от Color Scheme Designer 3, позволяет создавать палитры ещё и на основе загруженных изображений (которые, например, могли появиться у нас на этапе составления mood board). Так же данный сервис обладает большим архивом палитр других пользователей.

  • COLORlovers (http://www.colourlovers.com/). Обширное сообщество, где можно подобрать различные палитры.

Важно отметить, что при подборе цветов для палитры всегда стоит выбирать как минимум 2 контрастирующих цвета. Достижение нужного контраста между цветами – необходимое условие для того, чтобы у вас получился хороший интерактивный дизайн.

При работе над дизайном главной и внутренних страниц стоит помнить о некоторых основных принципах.

Элементы Call to Action


Понятие призыва к действию относится к интерактивным элементам сайта: кнопки, баннеры и пр. Данные элементы оформляются таким образом, что пользователю должно хотеться непременно на них нажать. Например, это может быть кнопка с призывом к действию (Нажми, Купи, Сэкономь), яркий баннер с заманчивым предложением, яркой картинкой и пр.

Данное понятие хорошо вписывается в принцип AIDA (Attraction Interest Desire Action).

AIDA


Данное понятие применяется чаще при дизайне главных страниц, страниц акций и пр., где необходимо подтолкнуть пользователя к тому или иному действию: подписка, покупка и пр. Если перевести данный акроним на русский, то мы получим следующие понятия:
  • Привлечение внимания
  • Интерес
  • Желание
  • Действие

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

Но и данный принцип не работает сам по себе без некоторых других: схема просмотра страницы (наиболее, естественный путь движения глаз по странице), визуальные направляющие.

Схема просмотра страницы


Довольно часто встречается Z-схема просмотра страницы. В соответствии с этим элементы страницы обычно располагают следующим образом: логотип слева вверху, меню справа вверху, информационные блоки, картинки слева внизу, кнопка с призывом к действию справа внизу.

Визуальные направляющие


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

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

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

Фрэймворки


Стоит так же отметить, что иногда, при разработке дизайна страницы, используют фрэймворки Bootstrap, Foundation, Material Design Lite, которые, помимо готовых элементов дизайна (кнопки, формы ввода и пр.), предлагают свою модульную сетку, CSS сниппеты (часть кода, разметки, которая может неоднократно использоваться) для вставки элементов в страницу (тех же кнопок, элементов форм и пр.) и классы разметки, а так же JS скрипты для соответствующих интерактивных элементов.

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


Готовые элементы дизайна из Bootstrap, Foundation и Material Design Lite (MDL)

Трэнды


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

Во-первых, стоит упомянуть о так называемых лэндинговых страницах, которые подразумевают под собой длинную страницу, разделённую на соответствующие секции и знакомящие пользователя с основным контентом сайта. Часто лэндинг является единственной страницей, на которой сразу удаётся показать всю необходимую информацию, не заставляя пользователя переходить по страницам. Лэндингам обычно сопутствует хороший дизайн, выверенная и продуманная подача информации, элементы call-to-action, интерактивность (счётчики, анимация и пр.).

Стоит так же сказать о внешнем виде страниц и вспомнить такие понятия как скевоморфизм и плоский дизайн.

Скевоморфизм


Скевоморфизм уже продолжительное время уступает свои позиции плоскому дизайну. Данное понятие означает наделение интерактивных элементов качествами реальных. Например, оформление страницы с книгами в виде книжной полки, оформление кнопки на подобии настоящей с соответствующей имитацией нажатия, использование реальных текстур и пр. Данный принцип активно использовался при создании страниц буквально пару лет назад, но затем тенденции сменились и на первый план вышел плоский дизайн (Flat, Material).

Плоский дизайн


Плоский дизайн использует минимум текстур и оформление, создание дизайна базируется на понятиях контраста, соотношения цветов и размеров.

Не маловажную роль на тренды в веб-дизайне оказало развитие мобильных операционных систем. Чаще всего двигателем прогресса становятся решения от компании Apple, которая в своих дизайн-решениях iOS сначала использовала имитацию реальных объектов, а затем всё упростила до плоского дизайна (Flat UI). Сейчас в вебе главенствует Flat дизайн и Material дизайн, который активно развивает Google.

Неплохой сайт-сравнение двух концепций: http://www.flatvsrealism.com/

По основам веб-дизайна и прототипированию неплохим подспорьем может стать данная книга: Джейсон Берд: Веб-дизайн. Руководство разработчика.


Итак, процесс дизайна макета страницы плавно перетекает в процесс «оживления» сделанного на предыдущих этапах. Прежде чем сразу начинать писать HTML, CSS и JS стоит немного поговорить о редакторах кода и структуре проекта.

Редакторы кода


Из наиболее популярных редакторов кода на сегодня можно выделить три:

От части, все эти редакторы похожи по принципу работы, когда при установке мы получаем редактор, в который затем можем «доставить» необходимые модули и плагины, так сказать, «редакторы на стероидах». Разница лишь в технологиях, которые были использованы при написании редакторов, если Sublime Text написан при помощи C++ и Python, то 2 других используют JavaScript, HTML, CSS (Less). За счёт этой разницы Sublime Text может работать чуть быстрее своих коллег.

Существуют так же более продвинутые IDE (студии) такие, как Web Storm, PHP Storm и пр., но для вёрстки проекта вполне подойдёт редактор кода, а не целая студия (IDE).

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

Обзоры текстовых редакторов:


Структура проекта


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

Лучше всего отдельные категории файлов помещать в свои папки: картинки в папку images или img, css в папку css, javascript в папку js. В корне будет лежать только index.html и страницы сайта, либо только index.html, а страницы в отдельной папке pages. Соблюдая эти правила вы никогда не запутаетесь в проекте.

Так же стоит сказать и об именовании файлов проекта. Чаще всего применяются следующие имена: главная страница – это index.html, стили проекта styles.css, скрипты scripts.js или app.js, минимизированные версии файлов имеют префикс .min, картинки носят не пространные названия на русском языке или набора цифр, а отражают то, что на них изображено, например, button.png, download-icon.png, logo.png и т.д.

Работа над проектом


Итак, определившись с редактором кода, структурой мы можем приступать к разработке. Прежде всего стоит отметить, что вёрстка страницы делается поэтапно: сначала пишется HTML-структура (HTML-код), затем добавляются стили, а после, если необходимо, пишутся скрипты (JS), добавляются необходимые плагины и библиотеки.

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


Написание HTML


Сейчас при написании HTML кода уже смело можно использовать тэги и элементы разметки, которые появились вместе с стандартом HTML5, если вам необходимо поддерживать старые браузеры, то можно использовать, например, плагин html5shiv (https://github.com/afarkas/html5shiv), который обеспечивает поддержку новых стандартов в старых браузерах или библиотеку Modernizr (https://modernizr.com/) (html5shiv входит в сборку Modernizr), которая определяет возможности браузера, с помощью которого просматривается сайт.

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

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

При написании разметки мы так же сразу можем прописывать элементам классы и идентификаторы.

Правила именования классов

В проекте во всём должен быть порядок: от структуры проекта до имен классов, разметки и написания кода. Если при разметке важно следить за типом информации и размещением её в соответствующих блоках (заголовок, список, ссылка, строчный элемент, параграф и пр.), то при именовании классов и идентификаторов важно соблюдать здравый смысл. Классы должны давать абстрактное понятие о блоке, к которому они относятся, чтобы код было легче читать, а затем и писать стили. В принципе здесь не должно быть ничего сложного, если мы размечаем меню, то логично содержащему блоку дать класс .nav или .navigation, если это блок с текстом, то можно дать ему класс .block-text и т.д.
БЭМ

На сегодняшний день есть один популярный подход, который касается принципов построения проекта в целом, но на данном этапе нас интересует именно именование классов. Подход называется БЭМ и расшифровывается, как Блок Элемент Модификатор.

Вкратце можно описать данный подход, как некое соглашение по именованию классов и представлению разметки страницы. Каждый элемент страницы являет собой сущность, которая может существовать независимо от контекста, тогда мы говорим о Блоке (.block) или же только в контексте другой сущности, тогда мы говорим об Элементе (.block__element). Каждый Блок или Элемент могут иметь различные модели представления: цвет, форму, прозрачность и пр. За подобные свойства будет отвечать Модификатор (.block__element_mod).

Таким образом мы представляем наш код, как композицию блоков, элементов и их модификаций.

Более полная информация о методологии: https://ru.bem.info/

SMACSS

Так же существует подход SMACSS (расшифровывается данный акроним как Scalable and Modular Architecture for CSS – Масштабируемая и Модульная Архитерктура для CSS), который разделяет понятие о классах и разметке на несколько уровней: базовый, макет, модуль, состояние, тема.
  • К базовому уровню будет относиться всё, что касается непосредственно тэгов html.
  • К уровню макета мы будем относить всё, что касается основных составляющих страницы: секции.
  • К уровню модуль мы будем относить всё, что касается переиспользуемых элементов страницы: баннеры, навигация, списки, блоки информации и пр.
  • Уровень Состояние описывает как будут выглядеть модули и секции в том или ином состоянии: отображаются или не отображаются, сжатые или раскрытые, активны или неактивны и пр.
  • Уровень темы чем-то схож с уровнем Состояния и отражает как модули или секции могут выглядеть.

В данном подходе используются следующие соглашения по именованию. Уровни определяются при помощи префиксов и соответствующего буквенного обозначения:
  • Макет: .l- или .layout-
  • Так как модули составляют основную часть проекта именовать их, используя префикс module- избыточно. Поэтому для них используются имена как есть, например: .example {}, .afisha {} и пр.
  • Состояния имеют префикс .is-, например .is-hidden {}
  • Уровень Темы именуется подобно модулям.

При данном подходе часто бывает удобно каждый уровень абстракции и его классы держать в отдельном файле.

Информация о методологии и онлайн книга: https://smacss.com/
Русскоязычный перевод книги по SMACSS: https://github.com/andrew—r/smacss

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

Небольшой курс по основам HTML: Смотреть

Написание CSS


Правила именования классов подводят нас к следующему этапу. Когда написана html структура проекта, определены классы можно переходить к написанию CSS стилей и нарезке макета.

Стоит упомянуть о 2-х CSS файлах-дополнениях: normalize.css и reset.css.

Reset.css


Изначально в проектах повсеместно использовался reset.css, написанный Эриком Мейером. Цель данного свода правил – сбросить стили браузера, которые он по умолчанию использует для отображения элементов разметки. Таким образом при использовании reset.css нам не нужно переписывать стили браузера, по сути мы работаем с «чистым листом» и можем сосредоточиться на написании собственных стилей с нуля.

Normalize.css


Normalize.css наоборот, не сбрасывает все стили «в ноль», а нормализует их, приводит отображение стилей проекта к более-менее однообразию во всех современных браузерах.

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

Так же стоит упомянуть о, так называемом, «быстром сбросе», когда мы абсолютно для всех элементов страницы с помощью селектора * прописываем свойства {margin: 0; padding: 0}. Таким образом мы сбрасываем все внутренние и внешние отступы для всех элементов страницы. Но данную технику не рекомендуется использовать, так как она замедляет процесс отрисовки страницы, да и по сути имеет мало смыла (на мой взгляд).

Так же стоит отметить, что все размеры и отступы берутся непосредственно из дизайн-макета. Для получения данных значений нам необходимо использовать инструмент «линейка» и направляющие (речь про инcтрументарий Adobe Photoshop), а затем переносить полученные значения в код. Если мы работаем с фиксированным макетом, то значения переносятся в пикселях как есть, если же у нас «резиновый», то значения нужно переводить в проценты. Основная формула – это ширина элемента, делённая на ширину контекста (ширина содержащего блока). Например, если блок, содержащий текст и картинку имеет на макете ширину 400px, а блок с текстом в нём должен иметь ширину 340px, то в процентном выражении это будет (340 / 400) * 100%, то есть 85% будет занимать блок с текстом.

Не стоит перегружать ваши стили чрезмерной специфичностью, например, если мы хотим, чтобы ссылка внутри списка имела красный цвет, то не обязательно записывать всю линейку классов и тэгов: .main –nav ul li a, достаточно просто указать .main-nav a. Слишком «специфичные» правила делают правила контекстно зависимым и заставляют вас писать лишний код, а так же влияют на скорость отрисовки страницы, так как при разборе правил CSS парсер читает их справа налево и ему сначала, если брать описанный выше пример, нужно взять все ссылки (a), затем отбросить все ссылки, которые не лежат в li и т.д. пока он не доберётся до содержащего класса.

Специфичность кода, так же означает чрезмерную привязку к базовым тэгам. Например, если мы хотим, чтобы элемент внутри .block был синим и при разметке использовали элемент span (в правилах мы написали .block span {background-color: blue}), то при замене его на div, например, нам нужно будет написать новое правило уже для div внутри .block. Таким образом наш код будет обрастать ненужными правилами, которые по сути дублируют друг друга. Гораздо проще определить всего лишь один класс (класс элемента), который при присвоении внутренним элементам будет приводить нас к желаемому результату.

Ещё один пример контекстной зависимости кода – это использование имен тэгов вместе с именами классов, например, div.block {display: block}. Если мы захотим тот же класс применить к span, то нам придётся написать опять span.block {display: block} или span.block, div.block {display: block}, что в любом случае приведёт к увеличению кода на лишнюю строчку.

Почему это важно? Во-первых, вы не делаете лишнюю работу, во-вторых, вам не нужно потом среди 10000 строк искать нужное правило и, наконец, чем больше строк кода, тем больше размер файла, а большие по объему файлы медленнее передаются по сети, что в свою очередь может быть причиной долгой загрузки, а излишняя специфичность причиной долгой отрисовки вашей страницы.

Если, вы используете правила, относящиеся к спецификации CSS3, то не поленитесь проверить необходимость использования браузерных префиксов на сайте http://caniuse.com.

Возвращаясь к Mobile First, стоит сказать, что при работе в данной концепции написание стилей стоит начинать с мобильной версии, а

Создаём сайт от начала до конца

Курс по созданию и раскрутке сайтов от А до Я:
Пошаговое руководство по созданию сайта на всех этапах — подробный курс (ВИДЕО) Создание и раскрутка сайта от А до Я«! Не хочешь запариваться и смотреть кучу разных курсов чтобы создать и раскрутить сайт? Тогда забирай этот по ссылке!

Facebook

Twitter

Вконтакте

Google+

Похожее

CSSHTMLJavaScriptmySQLphpбесплатное видеообучающие видеокурсы по созданию сайтовподробный видеокурсраскрутка сайтарегистрация доменасоздать сайт от А до Я

10 первых шагов при создании сайта

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

Кому-то эти шаги покажутся очевидными (значит вы уже создали не один сайт в своей жизни и это достойно уважения!), кому-то они покажутся очень общими (целью статьи не является подробно описать каждый пункт, более подробно они будут описаны в отдельных материалах нашего SEO блога), а кому-то, я надеюсь, будут очень полезны (это значит, что вы решили создать свой первый сайт и это тоже достойно уважения!).

Попробую составить список этих шагов и очень кратко их описать. Обратите внимание, самый важный шаг в конце, под номером 10 — читайте до конца. Там же, в конце статьи, у меня будет к вам одна просьба о помощи — я очень на вас надеюсь.

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

Шаг 1. Выберете тематику

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

Основные ошибки:

  • слишком общая тематика;
  • малый объем потенциальных посетителей.

Основные нюансы:

  • оценить степень конкуренции;
  • определить варианты монетизации и возможный доход;
  • не забыть про интересность темы лично для вас.

Шаг 2. Составьте семантическое ядро

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

Основные ошибки:

  • забить;
  • выбрать высококонкурентные запросы для первоначальной раскрутки.

Основные нюансы:

  • составление СЯ до начала запуска сайта;
  • основной упор сделать на малоконкурентных запросах.

Шаг 3. Определите структуру сайта

На основе подтем сайта, которые вы определили на предыдущем шаге, необходимо разработать структуру разделов на сайте. Здесь стоит полностью полагаться на здравый смысл и удобство для пользователя.

Основные ошибки:

  • составлять структуру сайта по ходу написания статей, а не заранее.

Основные нюансы:

  • простота для посетителя;
  • полнота.

Шаг 4. Выберете доменное имя

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

Стоит ли брать домен с возрастом или нет? Это вопрос спорный и однозначно на него ответить очень сложно. С одной стороны поисковики любят возрастные домены — они считают их более трастовыми, с другой стороны есть риск нарваться на домен, который был под баном у поисковиков, домен с плохой историей. Перед выбором домена очень серьезно подумайте и взвесьте все за и против. Если дизайн — это лицо сайта (про лицо сайта см. шаг 6 ниже), то доменное имя — это его паспортные данные.

Основные ошибки:

  • доменное имя с плохой историей;
  • нечитаемое доменное имя;
  • незапоминаемое доменное имя.

Основные нюансы:

  • простота доменного имени;
  • читаемость доменного имени;
  • связь доменного имени с тематикой сайта.

Шаг 5. Выберете CMS

Выберете CMS (content management system — система управления контентом), на которой будет реализован сайт. Это могут быть, как популярные бесплатные Joomla, WordPress, Drupal и т.д., платные 1С-Битрикс, NetCat, UMI.CMS и т.д., так и самописные системы управления сайтом. Выбор CMS надо основывать исключительно на своих знаниях того или иного движка, финансовых возможностях и требуемом функционале сайта. Эти пункты мы постараемся рассмотреть в отдельных статьях.

Основные ошибки:

  • выбор CMS с недостаточным функционалом;
  • неверный расчет финансовой составляющей;
  • неверная оценка своих знаний конкретной CMS.

Основные нюансы:

  • SEO — CMS должна позволять делать SEO ориентированные сайты;
  • функционал — CMS должна выполнять ваш функционал;
  • финансы и/или знания — если CMS не выполняет ваш функционал, то вы должны обладать достаточными финансами/знаниями, чтобы могли доработать ее.

Шаг 6. Дизайн сайта

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

Если же стратегия продвижения сильно зависит от социальных факторов (например, раскрутка через социальные сети) или сайт представляет собой какой-то сервис/интернет-магазин, то здесь дизайн важен на самом начальном этапе разработки сайта. Для посетителей из социальных сетей важен красивый и запоминающийся дизайн. После посещения вашего сайта у них должно остаться желание вернуться на него еще раз или внести в закладки. Такое желание у них может возникнуть только, если им понравился:

  1. контент сайта;
  2. дизайн сайта.

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

Основные ошибки:

  • непривлекательный — для сайтов с социальной раскруткой на первом этапе;
  • сложный — для интернет-магазинов;
  • постановка дизайна в приоритет — для контентного сайта с раскруткой через поисковики.

Основные нюансы:

  • юзабилити;
  • простота;
  • красота.

Шаг 7. Выбор хостинга

Выбор хостинга может быть не менее важным делом, чем выбор доменного имени. При ненадежном хостинге, плохой поддержке, недостаточности ресурсов поисковые системы могут плохо индексировать сайт или даже загонять его в бан (вплоть до АГС у «всеми любимого» Яндекса» — да-да, и такой опыт есть в нашей копилке, и даже есть опыт вывода сайтов из-под АГС). Со своей стороны я могу вам посоветовать хостинг от TimeWeb или Beget (внимание! реферальные ссылки!). С первым я работаю уже более 4 лет — нареканий никаких, это один из лидеров рынка в России. Второй начал использовать совсем недавно, пока тоже нареканий нет, но об абсолютной надежности и отличном качестве поддержки говорить пока рано, для этого нужно время.

Основные ошибки:

  • экономия на хостинге;
  • неверный расчет производительных характеристик требуемого хостинга.

Основные нюансы:

  • надежность;
  • хорошая поддержка;
  • достаточная производительность.

Шаг 8. Создание контента

Многие выполняют этот пункт уже после размещения сайта на хостинге и его настройке. Но я считаю, что перед этими действиями необходимо подготовить первые несколько статей. Поисковым роботом не нравится, когда они приходят на пустой сайт, им не нравятся пустые страницы, незаконченная структура сайта, неактивность аудитории из-за неполноты сайта. Поисковикам нравится, когда они видят наполненный сайт, также сайт должен наполняется регулярно, он должен быть «живым», аудитория сайта должна быть активна.

Основные ошибки:

  • запуск пустого сайта;
  • копипаст или плохой рерайт.

Основные нюансы:

  • интересный;
  • полезный;
  • захватывающий;
  • SEO ориентированный.

Шаг 9. Размещение на хостинге и настройка CMS

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

  • настроить htaccess;
  • настроить robots.txt;
  • настроить основное зеркало сайта;
  • настроить 404 страницу;
  • убедиться в отсутствии дублей;
  • добавить сайт в панели вебмастеров;
  • и т.д., список далеко неполный.

Основные ошибки:

  • пропуск какого-либо из технических вопросов при размещении сайта и настройке CMS.

Основные нюансы:

  • это мы рассмотрим в отдельной статье — очень широкая тема.

Шаг 10. Регулярная работа над сайтом

Этот шаг я считаю наиболее важным. Многие разместив сайт, создав начальный контент, после некоторого времени поддержки сайта начинают на него забивать, забывать, тратить меньше времени и усилий. Важно не останавливаться, даже если сайт развивается не в том темпе, в котором вы ожидали, даже если сайт не индексируется поисковиками, даже если вам просто становится лениво. Надо постоянно анализировать свои ошибки, придумывать и реализовывать новые шаги для развития и раскрутки сайта.

Основные ошибки:

Основные нюансы:

  • не останавливайтесь! Работайте!

И Успех обязательно к вам придет!

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

Добавить комментарий

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