Создание веб-сайта. Курс молодого бойца / Хабр
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:
Данный этап можно разделить на несколько подэтапов:
- Создание идеи
- Разработка структуры проекта
- Проработка макета проекта
Создание идеи
На данном этапе нам необходимо определиться с тематикой проекта (сайта, сервиса). Далее, в соответствии с выбранной темой, необходимо собрать соответствующие материалы: текстовые, графические.
Разработка структуры проекта
Когда мы определились с темой проекта, подобрали необходимый материал, следующим этапом будет разработка структуры проекта. Структура проекта подразумевает под собой разделы сайта, в соответствии с которыми будет формироваться навигационное меню и строиться дизайн проекта. На данном этапе можно классифицировать материал по темам и разделам.
Проработка макета проекта
После того, как мы определились со структурой проекта можно составить макет проекта (схематично).
Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.
Основные элементы страницы
Зачастую основными элементами страницы являются:
содержащий блок (wrapper, container)
,
логотип
,
навигация
,
контент
,
футер (нижний колонтитул)
,
свободное пространство
(по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).
Содержащий блок (контейнер)
Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип
Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация
Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент
Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Данный элемент располагается внизу страницы и обычно содержит информацию о правообладателе, контактные и юридические данные, ссылки на основные разделы сайта (зачастую дублирует основную навигацию), ссылки на социальные сети, форму обратной связи и пр.
Резиновый и фиксированный макет
Фиксированный макет
Фиксированный макет подразумевает под собой, что в независимости от разрешения экрана пользователя ваш сайт всегда будет занимать одинаковую ширину.
Резиновый макет
«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.
В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (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, стоит сказать, что при работе в данной концепции написание стилей стоит начинать с мобильной версии, а затем с помощью медиа запросов добавлять правила, которые будут работать на других разрешениях. Зачастую, при расширении правил от мобильной версии к десктопной, приходится писать гораздо меньше кода, чем при работе наоборот: от десктопной версии к мобильной.
Полезные ссылки и материалы:
Написание JS
Итак, заключительным этапом является написание JS скриптов. При создании веб страниц стало, практически, стандартом использование библиотеки jQuery, которая позволяет с лёгкостью манипулировать элементами web-страницы (DOM узлами), навешивать прослушку событий, отправлять запросы на сервер, обрабатывать результат выполнения и пр. Но не стоит слепо доверять трендам, на сегодняшний день нативный JavaScript достиг такого уровня, что вам возможно уже не нужен jQuery. Поэтому, прежде чем слепо прикреплять jQuery, стоит задуматься, так ли он нужен для ваших задач и не достаточно ли встроенных возможностей языка JavaScript.
Есть неплохой ресурс, который приводит альтернативы одних и тех же манипуляций на языке JavaScript и с помощью библиотеки jQuery: http://youmightnotneedjquery.com/, так же неплохим подспорьем является сайт https://developer.mozilla.org/ru/, на котором, помимо описания методов и свойств JavaScript, можно найти полифиллы для тех или иных методов (библиотека или часть кода, которая добавляет в старые браузеры поддержку возможностей современных функций и методов JavaScript).
Важно отметить, что не рекомендуется использовать JavaScript для стилизации, то есть не стоит для того или иного объекта DOM (элемента страницы) добавлять портянку CSS свойств с помощью JavaScript, чтобы выделить его состояние и пр. Рекомендуется использовать классы, то есть заранее в CSS определить классы-состояния (активный, не активный, скрытый, использованный и пр.) и при манипуляции элементами просто добавлять или убирать соответствующие классы.
Например, у нас есть элемент списка с классом .list__item, для того, чтобы показать активный элемент в данный момент (выбран пользователем) или нет, можно просто добавить класс (.list__item—active), а не прописывать все стили, присущие этому классу в JS:
document.querySelector(‘.list__item’).style.color = ‘red’;
и т.д.
Небольшой пример с возможными способами присваивания класса (присвоение модификатора происходит при нажатии на зелёный квадрат):
http://jsbin.com/
.
Не рекомендуется решать задачи, которые явно относятся к уровню CSS с помощью JavaScript, пытаясь как-то выровнять объект или добавить ему стили при наведении и пр.
Опять-таки, возвращаясь к теме Mobile First, нельзя не упомянуть о 2-х концепциях, которые коррелируют с данной техникой. Progressive Enhacement и Graceful Degradation, что переводится как прогрессивное улучшение и последовательное ухудшение. Данные принципы описывают 2 разных подхода к разработке: в первом случае мы разрабатываем наш сайт, пишем скрипты с учётом старых браузеров и систем или же определяем поведение при невозможности запуска скриптов, а затем постепенно улучшаем скрипт, вводя современные функции и методы, таким образом мы получаем сайт, который будет одинаково хорошо работать в старых и новых браузерах и средах (то же касается и css).
При Graceful Degradation подход противоположный – мы разрабатываем для современных браузеров и, лишь, потом начинаем вносить доработки и изменения с учётом старых версий.
Подход Mobile First чем-то схож с Progressive Enhacement.
Проверка кода
После написания html, css и js для нашей страницы необходимо проверить всё ли сделано верно. Для этого можно использовать online средства:
Благодаря данным сервисам можно проверить не забыли ли вы где-то закрыть тэг, верно ли используете параметры и атрибуты, всё ли в порядке с вашими стилями и правилами в них, а так же проверить ваш код на правильность написания функций, методов и пр.
Статьи с рекомендациями по написанию JS, HTML и CSS:
Средства автоматизации
На сегодняшний день практически все рутинные процессы разработки (за исключением дизайна) можно в той или иной степени автоматизировать.
960GS
Мы уже говорили об этом средстве разработки в разделе про модульные сетки и дизайн. Нужно сказать, что 960GS предлагает не только макеты для создания дизайна, но и свою систему именования классов. Используя предлагаемые классы при вёрстке и при подключении css файла системы в проект, блоки сайта будут выстроены по этой сетке, что сэкономит время на написании практически того же самого самостоятельно.
<div>
<div>
<div>
...
</div>
<div>
...
</div>
<div>
...
</div>
</div>
<div>
...
</div>
</div>
Emmet
Emmet – это средство работы с html и css (
http://emmet.io/
). Плагин для работы с данным средством можно установить, например, в Sublime Text, тогда у вас появляется возможность не писать громоздкие куски кода на html и css, а записывать их в строчку, раскрывая затем в полноценную разметку. Например, строка
.block>ul.list>li.list__item*3
, может быть раскрыта в полноценный код:
<div>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>
Затем вам просто необходимо вписать текстовые значения в элементы списка. То же касается и css: строка
w:100px+h:150px+bgc:#ff0
раскрывается в:
width: 100px;
height: 150px;
background-color: #ff0;
Благодаря данным средствам писать код становится быстрее и приятнее, так как вы меньше времени тратите на написания закрывающих блоков, переходам по строчкам, а так же уменьшается возможность, касательно html, не закрыть тот или иной элемент разметки. В плане CSS, например, становится легче работать с браузерными префиксами, так как одна строчка с CSS3 свойством может быть раскрыта в несколько с добавлением необходимых префиксов.
Jade
Далее стоит упомянуть и о таком языке работе с шаблонами, как jade (
http://jade-lang.com/
). Опять-таки, с помощью jade писать html становится быстрее и удобнее, а так же появляется возможность создания переиспользуемых блоков кода и миксинов, передавая которым на вход те или иные параметры мы будет получать нужную нам разметку. Благодаря jade в проекте, касательно разметки и написания страниц, может поддерживаться модульность, а часто используемые названия и блоки кода могут выноситься в качестве переменных (названия, имена страниц и пр.) или миксинов в отдельные файлы настроек и файлы, соответственно. Для работы с jade, а точнее для преобразования написанного кода из jade в html, необходимо использовать командную строку, а так же установить на ваш компьютер платформу nodejs (
https://nodejs.org/en/
,
http://nodejs.ru/
).
Командная строка
Работа в командной строке так же может ускорить некоторые этапы работы над проектом, например, создание папок и файлов. Запустив консоль в директории проекта и набрав в ней всего лишь одну строку:
mkdir project && cd project && mkdir css && touch css/styles.css && mkdir images && mkdir js && touch js/app.js && touch index.html
После нажатия enter мы получим папку project в которой будут находиться папки css, images, js, в папках css и js файлы styles.css и app.js, соответственно, а в корне project лежать файл index.html. Таким образом мы сэкономили время на создание папки, написание её названия, создание файлов и пр. Так же командная строка используется для работы с остальными средствами автоматизации.
Sass
Далее стоит поговорить о таком языке как Sass (
http://sass-lang.com
/). Данный язык упрощает работу с css. Благодаря Sass можно записывать вложенные классы, проводить математические вычисления прямо в коде, выносить переиспользуемые величины в качестве переменных в отдельные файлы или в начало файла, что в значительной степени упрощает дальнейшую работу со стилями и упрощает изменение тех или иных величин, так как они все будут храниться в одном месте и не нужно будет «ходить» по всему проекту и вносить соответствующие правки. Так же, благодаря Sass в проекте можно придерживаться принципа модульности, храня части разметки в соответствующих файлах и подключать их все в основной, затем с помощью консольной команды можно собрать весь код в один css файл, так же поддерживается сборка результирующего файла на лету по мере написания стилей. Опять-таки для работы с Sass потребуется командная строка. Процесс установки пакета можно изучить здесь:
http://sass-lang.com/install
.
HTML5Boilerplate
HTML5Boilerplate (
https://html5boilerplate.com/
) представляет собой заранее скомпонованный проект, в котором уже есть index.html, normalize.css и пр. В index.html, например, уже заранее прописаны основные куски кода, которые необходимы при написании html страницы. Проект позволяет скачать архив со всеми файлами как есть или же использовать кастомную сборку:
http://www.initializr.com/
. Опять-таки, принцип прост: зачем тратить время на написание одних и тех же строк или на проделывание одних и тех же манипуляций, если мы сразу можем сосредоточиться непосредственно на работе с проектом.
Gulp и Grunt
Gulp (
http://gulpjs.com/
) и Grunt (
http://gruntjs.com/
) представляют собой сервисы запуска задач, которые описываются в основных файлах данных сервисов, выполняются с помощью совместимых модулей и запускаются на выполнение с помощью консоли.
Данные сервисы помогают использовать в разработке, например, вышеописанные средства Jade и Sass, автоматически преобразовывать их в соответствующие файлы html и css, сжимать их, если необходимо, а так же проверять, например css свойства, на необходимость использования браузерных префиксов и подставлять их в автоматическом режиме.
Оба сервиса используют различный подход в описании выполнения задач, но суть их работы одинакова. Полезным будет данное сравнение: http://frontender.info/gulp-grunt-whatever/
Так же многие сервисы вроде autoprefixer (автоматическая простановка браузерных префиксов), jshint (проверка JS кода на валидность) могут быть установлены как сторонние плагины в текстовом редакторе (Sumblime Text, Atom, Brackets) и инициализированы при нажатии определённого сочетания клавиш.
Bootrstrap, Foundation, Material Design Lite
Данные фрэймворки уже упоминались в разделе про дизайн. Но стоит опять вспомнить о них, так как они, в определённой степени, помогают автоматизировать процесс разметки веб-страницы и работы с ней.
При подключении файлов фрэймворков в проекте мы можем использовать определённые в них классы и сниппеты разметки, которые будут работать по уже описанным правилам и иметь установленный внешний вид (например, кнопки, поля ввода, таблицы и пр.). Таким образом мы экономим время, например, на описание расположения блоков дизайна, их размеров в зависимости от разрешения, внешний вид полей формы, кнопок и их состояния.
Со всеми возможностями и примерами можно ознакомиться на соответствующих сайтах:
Данное описание не является исчерпывающим и представляет собой лишь поверхностный взгляд на некоторые технологии. Но прежде чем пускаться во все тяжкие, используя средства автоматизации, библиотеки, framework’и, готовый код и прочее, стоит, всё-таки, изучить основы работы с html, css и js.
Надеюсь, что все описанные вещи будут полезны вам в изучении темы веб-дизайна и фронтенд разработки.
Создание веб-сайта. Курс молодого бойца / Хабр
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:
Данный этап можно разделить на несколько подэтапов:
- Создание идеи
- Разработка структуры проекта
- Проработка макета проекта
Создание идеи
На данном этапе нам необходимо определиться с тематикой проекта (сайта, сервиса). Далее, в соответствии с выбранной темой, необходимо собрать соответствующие материалы: текстовые, графические.
Разработка структуры проекта
Когда мы определились с темой проекта, подобрали необходимый материал, следующим этапом будет разработка структуры проекта. Структура проекта подразумевает под собой разделы сайта, в соответствии с которыми будет формироваться навигационное меню и строиться дизайн проекта. На данном этапе можно классифицировать материал по темам и разделам.
Проработка макета проекта
После того, как мы определились со структурой проекта можно составить макет проекта (схематично).
Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.
Основные элементы страницы
Зачастую основными элементами страницы являются:
содержащий блок (wrapper, container)
,
логотип
,
навигация
,
контент
,
футер (нижний колонтитул)
,
свободное пространство
(по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).
Содержащий блок (контейнер)
Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип
Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация
Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент
Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Данный элемент располагается внизу страницы и обычно содержит информацию о правообладателе, контактные и юридические данные, ссылки на основные разделы сайта (зачастую дублирует основную навигацию), ссылки на социальные сети, форму обратной связи и пр.
Резиновый и фиксированный макет
Фиксированный макет
Фиксированный макет подразумевает под собой, что в независимости от разрешения экрана пользователя ваш сайт всегда будет занимать одинаковую ширину.
Резиновый макет
«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.
В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (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, стоит сказать, что при работе в данной концепции написание стилей стоит начинать с мобильной версии, а затем с помощью медиа запросов добавлять правила, которые будут работать на других разрешениях. Зачастую, при расширении правил от мобильной версии к десктопной, приходится писать гораздо меньше кода, чем при работе наоборот: от десктопной версии к мобильной.
Полезные ссылки и материалы:
Написание JS
Итак, заключительным этапом является написание JS скриптов. При создании веб страниц стало, практически, стандартом использование библиотеки jQuery, которая позволяет с лёгкостью манипулировать элементами web-страницы (DOM узлами), навешивать прослушку событий, отправлять запросы на сервер, обрабатывать результат выполнения и пр. Но не стоит слепо доверять трендам, на сегодняшний день нативный JavaScript достиг такого уровня, что вам возможно уже не нужен jQuery. Поэтому, прежде чем слепо прикреплять jQuery, стоит задуматься, так ли он нужен для ваших задач и не достаточно ли встроенных возможностей языка JavaScript.
Есть неплохой ресурс, который приводит альтернативы одних и тех же манипуляций на языке JavaScript и с помощью библиотеки jQuery: http://youmightnotneedjquery.com/, так же неплохим подспорьем является сайт https://developer.mozilla.org/ru/, на котором, помимо описания методов и свойств JavaScript, можно найти полифиллы для тех или иных методов (библиотека или часть кода, которая добавляет в старые браузеры поддержку возможностей современных функций и методов JavaScript).
Важно отметить, что не рекомендуется использовать JavaScript для стилизации, то есть не стоит для того или иного объекта DOM (элемента страницы) добавлять портянку CSS свойств с помощью JavaScript, чтобы выделить его состояние и пр. Рекомендуется использовать классы, то есть заранее в CSS определить классы-состояния (активный, не активный, скрытый, использованный и пр.) и при манипуляции элементами просто добавлять или убирать соответствующие классы.
Например, у нас есть элемент списка с классом .list__item, для того, чтобы показать активный элемент в данный момент (выбран пользователем) или нет, можно просто добавить класс (.list__item—active), а не прописывать все стили, присущие этому классу в JS:
document.querySelector(‘.list__item’).style.color = ‘red’;
и т.д.
Небольшой пример с возможными способами присваивания класса (присвоение модификатора происходит при нажатии на зелёный квадрат):
http://jsbin.com/
.
Не рекомендуется решать задачи, которые явно относятся к уровню CSS с помощью JavaScript, пытаясь как-то выровнять объект или добавить ему стили при наведении и пр.
Опять-таки, возвращаясь к теме Mobile First, нельзя не упомянуть о 2-х концепциях, которые коррелируют с данной техникой. Progressive Enhacement и Graceful Degradation, что переводится как прогрессивное улучшение и последовательное ухудшение. Данные принципы описывают 2 разных подхода к разработке: в первом случае мы разрабатываем наш сайт, пишем скрипты с учётом старых браузеров и систем или же определяем поведение при невозможности запуска скриптов, а затем постепенно улучшаем скрипт, вводя современные функции и методы, таким образом мы получаем сайт, который будет одинаково хорошо работать в старых и новых браузерах и средах (то же касается и css).
При Graceful Degradation подход противоположный – мы разрабатываем для современных браузеров и, лишь, потом начинаем вносить доработки и изменения с учётом старых версий.
Подход Mobile First чем-то схож с Progressive Enhacement.
Проверка кода
После написания html, css и js для нашей страницы необходимо проверить всё ли сделано верно. Для этого можно использовать online средства:
Благодаря данным сервисам можно проверить не забыли ли вы где-то закрыть тэг, верно ли используете параметры и атрибуты, всё ли в порядке с вашими стилями и правилами в них, а так же проверить ваш код на правильность написания функций, методов и пр.
Статьи с рекомендациями по написанию JS, HTML и CSS:
Средства автоматизации
На сегодняшний день практически все рутинные процессы разработки (за исключением дизайна) можно в той или иной степени автоматизировать.
960GS
Мы уже говорили об этом средстве разработки в разделе про модульные сетки и дизайн. Нужно сказать, что 960GS предлагает не только макеты для создания дизайна, но и свою систему именования классов. Используя предлагаемые классы при вёрстке и при подключении css файла системы в проект, блоки сайта будут выстроены по этой сетке, что сэкономит время на написании практически того же самого самостоятельно.
<div>
<div>
<div>
...
</div>
<div>
...
</div>
<div>
...
</div>
</div>
<div>
...
</div>
</div>
Emmet
Emmet – это средство работы с html и css (
http://emmet.io/
). Плагин для работы с данным средством можно установить, например, в Sublime Text, тогда у вас появляется возможность не писать громоздкие куски кода на html и css, а записывать их в строчку, раскрывая затем в полноценную разметку. Например, строка
.block>ul.list>li.list__item*3
, может быть раскрыта в полноценный код:
<div>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>
Затем вам просто необходимо вписать текстовые значения в элементы списка. То же касается и css: строка
w:100px+h:150px+bgc:#ff0
раскрывается в:
width: 100px;
height: 150px;
background-color: #ff0;
Благодаря данным средствам писать код становится быстрее и приятнее, так как вы меньше времени тратите на написания закрывающих блоков, переходам по строчкам, а так же уменьшается возможность, касательно html, не закрыть тот или иной элемент разметки. В плане CSS, например, становится легче работать с браузерными префиксами, так как одна строчка с CSS3 свойством может быть раскрыта в несколько с добавлением необходимых префиксов.
Jade
Далее стоит упомянуть и о таком языке работе с шаблонами, как jade (
http://jade-lang.com/
). Опять-таки, с помощью jade писать html становится быстрее и удобнее, а так же появляется возможность создания переиспользуемых блоков кода и миксинов, передавая которым на вход те или иные параметры мы будет получать нужную нам разметку. Благодаря jade в проекте, касательно разметки и написания страниц, может поддерживаться модульность, а часто используемые названия и блоки кода могут выноситься в качестве переменных (названия, имена страниц и пр.) или миксинов в отдельные файлы настроек и файлы, соответственно. Для работы с jade, а точнее для преобразования написанного кода из jade в html, необходимо использовать командную строку, а так же установить на ваш компьютер платформу nodejs (
https://nodejs.org/en/
,
http://nodejs.ru/
).
Командная строка
Работа в командной строке так же может ускорить некоторые этапы работы над проектом, например, создание папок и файлов. Запустив консоль в директории проекта и набрав в ней всего лишь одну строку:
mkdir project && cd project && mkdir css && touch css/styles.css && mkdir images && mkdir js && touch js/app.js && touch index.html
После нажатия enter мы получим папку project в которой будут находиться папки css, images, js, в папках css и js файлы styles.css и app.js, соответственно, а в корне project лежать файл index.html. Таким образом мы сэкономили время на создание папки, написание её названия, создание файлов и пр. Так же командная строка используется для работы с остальными средствами автоматизации.
Sass
Далее стоит поговорить о таком языке как Sass (
http://sass-lang.com
/). Данный язык упрощает работу с css. Благодаря Sass можно записывать вложенные классы, проводить математические вычисления прямо в коде, выносить переиспользуемые величины в качестве переменных в отдельные файлы или в начало файла, что в значительной степени упрощает дальнейшую работу со стилями и упрощает изменение тех или иных величин, так как они все будут храниться в одном месте и не нужно будет «ходить» по всему проекту и вносить соответствующие правки. Так же, благодаря Sass в проекте можно придерживаться принципа модульности, храня части разметки в соответствующих файлах и подключать их все в основной, затем с помощью консольной команды можно собрать весь код в один css файл, так же поддерживается сборка результирующего файла на лету по мере написания стилей. Опять-таки для работы с Sass потребуется командная строка. Процесс установки пакета можно изучить здесь:
http://sass-lang.com/install
.
HTML5Boilerplate
HTML5Boilerplate (
https://html5boilerplate.com/
) представляет собой заранее скомпонованный проект, в котором уже есть index.html, normalize.css и пр. В index.html, например, уже заранее прописаны основные куски кода, которые необходимы при написании html страницы. Проект позволяет скачать архив со всеми файлами как есть или же использовать кастомную сборку:
http://www.initializr.com/
. Опять-таки, принцип прост: зачем тратить время на написание одних и тех же строк или на проделывание одних и тех же манипуляций, если мы сразу можем сосредоточиться непосредственно на работе с проектом.
Gulp и Grunt
Gulp (
http://gulpjs.com/
) и Grunt (
http://gruntjs.com/
) представляют собой сервисы запуска задач, которые описываются в основных файлах данных сервисов, выполняются с помощью совместимых модулей и запускаются на выполнение с помощью консоли.
Данные сервисы помогают использовать в разработке, например, вышеописанные средства Jade и Sass, автоматически преобразовывать их в соответствующие файлы html и css, сжимать их, если необходимо, а так же проверять, например css свойства, на необходимость использования браузерных префиксов и подставлять их в автоматическом режиме.
Оба сервиса используют различный подход в описании выполнения задач, но суть их работы одинакова. Полезным будет данное сравнение: http://frontender.info/gulp-grunt-whatever/
Так же многие сервисы вроде autoprefixer (автоматическая простановка браузерных префиксов), jshint (проверка JS кода на валидность) могут быть установлены как сторонние плагины в текстовом редакторе (Sumblime Text, Atom, Brackets) и инициализированы при нажатии определённого сочетания клавиш.
Bootrstrap, Foundation, Material Design Lite
Данные фрэймворки уже упоминались в разделе про дизайн. Но стоит опять вспомнить о них, так как они, в определённой степени, помогают автоматизировать процесс разметки веб-страницы и работы с ней.
При подключении файлов фрэймворков в проекте мы можем использовать определённые в них классы и сниппеты разметки, которые будут работать по уже описанным правилам и иметь установленный внешний вид (например, кнопки, поля ввода, таблицы и пр.). Таким образом мы экономим время, например, на описание расположения блоков дизайна, их размеров в зависимости от разрешения, внешний вид полей формы, кнопок и их состояния.
Со всеми возможностями и примерами можно ознакомиться на соответствующих сайтах:
Данное описание не является исчерпывающим и представляет собой лишь поверхностный взгляд на некоторые технологии. Но прежде чем пускаться во все тяжкие, используя средства автоматизации, библиотеки, framework’и, готовый код и прочее, стоит, всё-таки, изучить основы работы с html, css и js.
Надеюсь, что все описанные вещи будут полезны вам в изучении темы веб-дизайна и фронтенд разработки.
Создание веб-сайта. Курс молодого бойца / Хабр
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:
Данный этап можно разделить на несколько подэтапов:
- Создание идеи
- Разработка структуры проекта
- Проработка макета проекта
Создание идеи
На данном этапе нам необходимо определиться с тематикой проекта (сайта, сервиса). Далее, в соответствии с выбранной темой, необходимо собрать соответствующие материалы: текстовые, графические.
Разработка структуры проекта
Когда мы определились с темой проекта, подобрали необходимый материал, следующим этапом будет разработка структуры проекта. Структура проекта подразумевает под собой разделы сайта, в соответствии с которыми будет формироваться навигационное меню и строиться дизайн проекта. На данном этапе можно классифицировать материал по темам и разделам.
Проработка макета проекта
После того, как мы определились со структурой проекта можно составить макет проекта (схематично).
Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.
Основные элементы страницы
Зачастую основными элементами страницы являются:
содержащий блок (wrapper, container)
,
логотип
,
навигация
,
контент
,
футер (нижний колонтитул)
,
свободное пространство
(по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).
Содержащий блок (контейнер)
Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип
Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация
Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент
Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Данный элемент располагается внизу страницы и обычно содержит информацию о правообладателе, контактные и юридические данные, ссылки на основные разделы сайта (зачастую дублирует основную навигацию), ссылки на социальные сети, форму обратной связи и пр.
Резиновый и фиксированный макет
Фиксированный макет
Фиксированный макет подразумевает под собой, что в независимости от разрешения экрана пользователя ваш сайт всегда будет занимать одинаковую ширину.
Резиновый макет
«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.
В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (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, стоит сказать, что при работе в данной концепции написание стилей стоит начинать с мобильной версии, а затем с помощью медиа запросов добавлять правила, которые будут работать на других разрешениях. Зачастую, при расширении правил от мобильной версии к десктопной, приходится писать гораздо меньше кода, чем при работе наоборот: от десктопной версии к мобильной.
Полезные ссылки и материалы:
Написание JS
Итак, заключительным этапом является написание JS скриптов. При создании веб страниц стало, практически, стандартом использование библиотеки jQuery, которая позволяет с лёгкостью манипулировать элементами web-страницы (DOM узлами), навешивать прослушку событий, отправлять запросы на сервер, обрабатывать результат выполнения и пр. Но не стоит слепо доверять трендам, на сегодняшний день нативный JavaScript достиг такого уровня, что вам возможно уже не нужен jQuery. Поэтому, прежде чем слепо прикреплять jQuery, стоит задуматься, так ли он нужен для ваших задач и не достаточно ли встроенных возможностей языка JavaScript.
Есть неплохой ресурс, который приводит альтернативы одних и тех же манипуляций на языке JavaScript и с помощью библиотеки jQuery: http://youmightnotneedjquery.com/, так же неплохим подспорьем является сайт https://developer.mozilla.org/ru/, на котором, помимо описания методов и свойств JavaScript, можно найти полифиллы для тех или иных методов (библиотека или часть кода, которая добавляет в старые браузеры поддержку возможностей современных функций и методов JavaScript).
Важно отметить, что не рекомендуется использовать JavaScript для стилизации, то есть не стоит для того или иного объекта DOM (элемента страницы) добавлять портянку CSS свойств с помощью JavaScript, чтобы выделить его состояние и пр. Рекомендуется использовать классы, то есть заранее в CSS определить классы-состояния (активный, не активный, скрытый, использованный и пр.) и при манипуляции элементами просто добавлять или убирать соответствующие классы.
Например, у нас есть элемент списка с классом .list__item, для того, чтобы показать активный элемент в данный момент (выбран пользователем) или нет, можно просто добавить класс (.list__item—active), а не прописывать все стили, присущие этому классу в JS:
document.querySelector(‘.list__item’).style.color = ‘red’;
и т.д.
Небольшой пример с возможными способами присваивания класса (присвоение модификатора происходит при нажатии на зелёный квадрат):
http://jsbin.com/
.
Не рекомендуется решать задачи, которые явно относятся к уровню CSS с помощью JavaScript, пытаясь как-то выровнять объект или добавить ему стили при наведении и пр.
Опять-таки, возвращаясь к теме Mobile First, нельзя не упомянуть о 2-х концепциях, которые коррелируют с данной техникой. Progressive Enhacement и Graceful Degradation, что переводится как прогрессивное улучшение и последовательное ухудшение. Данные принципы описывают 2 разных подхода к разработке: в первом случае мы разрабатываем наш сайт, пишем скрипты с учётом старых браузеров и систем или же определяем поведение при невозможности запуска скриптов, а затем постепенно улучшаем скрипт, вводя современные функции и методы, таким образом мы получаем сайт, который будет одинаково хорошо работать в старых и новых браузерах и средах (то же касается и css).
При Graceful Degradation подход противоположный – мы разрабатываем для современных браузеров и, лишь, потом начинаем вносить доработки и изменения с учётом старых версий.
Подход Mobile First чем-то схож с Progressive Enhacement.
Проверка кода
После написания html, css и js для нашей страницы необходимо проверить всё ли сделано верно. Для этого можно использовать online средства:
Благодаря данным сервисам можно проверить не забыли ли вы где-то закрыть тэг, верно ли используете параметры и атрибуты, всё ли в порядке с вашими стилями и правилами в них, а так же проверить ваш код на правильность написания функций, методов и пр.
Статьи с рекомендациями по написанию JS, HTML и CSS:
Средства автоматизации
На сегодняшний день практически все рутинные процессы разработки (за исключением дизайна) можно в той или иной степени автоматизировать.
960GS
Мы уже говорили об этом средстве разработки в разделе про модульные сетки и дизайн. Нужно сказать, что 960GS предлагает не только макеты для создания дизайна, но и свою систему именования классов. Используя предлагаемые классы при вёрстке и при подключении css файла системы в проект, блоки сайта будут выстроены по этой сетке, что сэкономит время на написании практически того же самого самостоятельно.
<div>
<div>
<div>
...
</div>
<div>
...
</div>
<div>
...
</div>
</div>
<div>
...
</div>
</div>
Emmet
Emmet – это средство работы с html и css (
http://emmet.io/
). Плагин для работы с данным средством можно установить, например, в Sublime Text, тогда у вас появляется возможность не писать громоздкие куски кода на html и css, а записывать их в строчку, раскрывая затем в полноценную разметку. Например, строка
.block>ul.list>li.list__item*3
, может быть раскрыта в полноценный код:
<div>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>
Затем вам просто необходимо вписать текстовые значения в элементы списка. То же касается и css: строка
w:100px+h:150px+bgc:#ff0
раскрывается в:
width: 100px;
height: 150px;
background-color: #ff0;
Благодаря данным средствам писать код становится быстрее и приятнее, так как вы меньше времени тратите на написания закрывающих блоков, переходам по строчкам, а так же уменьшается возможность, касательно html, не закрыть тот или иной элемент разметки. В плане CSS, например, становится легче работать с браузерными префиксами, так как одна строчка с CSS3 свойством может быть раскрыта в несколько с добавлением необходимых префиксов.
Jade
Далее стоит упомянуть и о таком языке работе с шаблонами, как jade (
http://jade-lang.com/
). Опять-таки, с помощью jade писать html становится быстрее и удобнее, а так же появляется возможность создания переиспользуемых блоков кода и миксинов, передавая которым на вход те или иные параметры мы будет получать нужную нам разметку. Благодаря jade в проекте, касательно разметки и написания страниц, может поддерживаться модульность, а часто используемые названия и блоки кода могут выноситься в качестве переменных (названия, имена страниц и пр.) или миксинов в отдельные файлы настроек и файлы, соответственно. Для работы с jade, а точнее для преобразования написанного кода из jade в html, необходимо использовать командную строку, а так же установить на ваш компьютер платформу nodejs (
https://nodejs.org/en/
,
http://nodejs.ru/
).
Командная строка
Работа в командной строке так же может ускорить некоторые этапы работы над проектом, например, создание папок и файлов. Запустив консоль в директории проекта и набрав в ней всего лишь одну строку:
mkdir project && cd project && mkdir css && touch css/styles.css && mkdir images && mkdir js && touch js/app.js && touch index.html
После нажатия enter мы получим папку project в которой будут находиться папки css, images, js, в папках css и js файлы styles.css и app.js, соответственно, а в корне project лежать файл index.html. Таким образом мы сэкономили время на создание папки, написание её названия, создание файлов и пр. Так же командная строка используется для работы с остальными средствами автоматизации.
Sass
Далее стоит поговорить о таком языке как Sass (
http://sass-lang.com
/). Данный язык упрощает работу с css. Благодаря Sass можно записывать вложенные классы, проводить математические вычисления прямо в коде, выносить переиспользуемые величины в качестве переменных в отдельные файлы или в начало файла, что в значительной степени упрощает дальнейшую работу со стилями и упрощает изменение тех или иных величин, так как они все будут храниться в одном месте и не нужно будет «ходить» по всему проекту и вносить соответствующие правки. Так же, благодаря Sass в проекте можно придерживаться принципа модульности, храня части разметки в соответствующих файлах и подключать их все в основной, затем с помощью консольной команды можно собрать весь код в один css файл, так же поддерживается сборка результирующего файла на лету по мере написания стилей. Опять-таки для работы с Sass потребуется командная строка. Процесс установки пакета можно изучить здесь:
http://sass-lang.com/install
.
HTML5Boilerplate
HTML5Boilerplate (
https://html5boilerplate.com/
) представляет собой заранее скомпонованный проект, в котором уже есть index.html, normalize.css и пр. В index.html, например, уже заранее прописаны основные куски кода, которые необходимы при написании html страницы. Проект позволяет скачать архив со всеми файлами как есть или же использовать кастомную сборку:
http://www.initializr.com/
. Опять-таки, принцип прост: зачем тратить время на написание одних и тех же строк или на проделывание одних и тех же манипуляций, если мы сразу можем сосредоточиться непосредственно на работе с проектом.
Gulp и Grunt
Gulp (
http://gulpjs.com/
) и Grunt (
http://gruntjs.com/
) представляют собой сервисы запуска задач, которые описываются в основных файлах данных сервисов, выполняются с помощью совместимых модулей и запускаются на выполнение с помощью консоли.
Данные сервисы помогают использовать в разработке, например, вышеописанные средства Jade и Sass, автоматически преобразовывать их в соответствующие файлы html и css, сжимать их, если необходимо, а так же проверять, например css свойства, на необходимость использования браузерных префиксов и подставлять их в автоматическом режиме.
Оба сервиса используют различный подход в описании выполнения задач, но суть их работы одинакова. Полезным будет данное сравнение: http://frontender.info/gulp-grunt-whatever/
Так же многие сервисы вроде autoprefixer (автоматическая простановка браузерных префиксов), jshint (проверка JS кода на валидность) могут быть установлены как сторонние плагины в текстовом редакторе (Sumblime Text, Atom, Brackets) и инициализированы при нажатии определённого сочетания клавиш.
Bootrstrap, Foundation, Material Design Lite
Данные фрэймворки уже упоминались в разделе про дизайн. Но стоит опять вспомнить о них, так как они, в определённой степени, помогают автоматизировать процесс разметки веб-страницы и работы с ней.
При подключении файлов фрэймворков в проекте мы можем использовать определённые в них классы и сниппеты разметки, которые будут работать по уже описанным правилам и иметь установленный внешний вид (например, кнопки, поля ввода, таблицы и пр.). Таким образом мы экономим время, например, на описание расположения блоков дизайна, их размеров в зависимости от разрешения, внешний вид полей формы, кнопок и их состояния.
Со всеми возможностями и примерами можно ознакомиться на соответствующих сайтах:
Данное описание не является исчерпывающим и представляет собой лишь поверхностный взгляд на некоторые технологии. Но прежде чем пускаться во все тяжкие, используя средства автоматизации, библиотеки, framework’и, готовый код и прочее, стоит, всё-таки, изучить основы работы с html, css и js.
Надеюсь, что все описанные вещи будут полезны вам в изучении темы веб-дизайна и фронтенд разработки.
Создание веб-сайта. Курс молодого бойца / Хабр
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:
Данный этап можно разделить на несколько подэтапов:
- Создание идеи
- Разработка структуры проекта
- Проработка макета проекта
Создание идеи
На данном этапе нам необходимо определиться с тематикой проекта (сайта, сервиса). Далее, в соответствии с выбранной темой, необходимо собрать соответствующие материалы: текстовые, графические.
Разработка структуры проекта
Когда мы определились с темой проекта, подобрали необходимый материал, следующим этапом будет разработка структуры проекта. Структура проекта подразумевает под собой разделы сайта, в соответствии с которыми будет формироваться навигационное меню и строиться дизайн проекта. На данном этапе можно классифицировать материал по темам и разделам.
Проработка макета проекта
После того, как мы определились со структурой проекта можно составить макет проекта (схематично).
Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.
Основные элементы страницы
Зачастую основными элементами страницы являются:
содержащий блок (wrapper, container)
,
логотип
,
навигация
,
контент
,
футер (нижний колонтитул)
,
свободное пространство
(по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).
Содержащий блок (контейнер)
Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип
Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация
Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент
Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Данный элемент располагается внизу страницы и обычно содержит информацию о правообладателе, контактные и юридические данные, ссылки на основные разделы сайта (зачастую дублирует основную навигацию), ссылки на социальные сети, форму обратной связи и пр.
Резиновый и фиксированный макет
Фиксированный макет
Фиксированный макет подразумевает под собой, что в независимости от разрешения экрана пользователя ваш сайт всегда будет занимать одинаковую ширину.
Резиновый макет
«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.
В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (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, стоит сказать, что при работе в данной концепции написание стилей стоит начинать с мобильной версии, а затем с помощью медиа запросов добавлять правила, которые будут работать на других разрешениях. Зачастую, при расширении правил от мобильной версии к десктопной, приходится писать гораздо меньше кода, чем при работе наоборот: от десктопной версии к мобильной.
Полезные ссылки и материалы:
Написание JS
Итак, заключительным этапом является написание JS скриптов. При создании веб страниц стало, практически, стандартом использование библиотеки jQuery, которая позволяет с лёгкостью манипулировать элементами web-страницы (DOM узлами), навешивать прослушку событий, отправлять запросы на сервер, обрабатывать результат выполнения и пр. Но не стоит слепо доверять трендам, на сегодняшний день нативный JavaScript достиг такого уровня, что вам возможно уже не нужен jQuery. Поэтому, прежде чем слепо прикреплять jQuery, стоит задуматься, так ли он нужен для ваших задач и не достаточно ли встроенных возможностей языка JavaScript.
Есть неплохой ресурс, который приводит альтернативы одних и тех же манипуляций на языке JavaScript и с помощью библиотеки jQuery: http://youmightnotneedjquery.com/, так же неплохим подспорьем является сайт https://developer.mozilla.org/ru/, на котором, помимо описания методов и свойств JavaScript, можно найти полифиллы для тех или иных методов (библиотека или часть кода, которая добавляет в старые браузеры поддержку возможностей современных функций и методов JavaScript).
Важно отметить, что не рекомендуется использовать JavaScript для стилизации, то есть не стоит для того или иного объекта DOM (элемента страницы) добавлять портянку CSS свойств с помощью JavaScript, чтобы выделить его состояние и пр. Рекомендуется использовать классы, то есть заранее в CSS определить классы-состояния (активный, не активный, скрытый, использованный и пр.) и при манипуляции элементами просто добавлять или убирать соответствующие классы.
Например, у нас есть элемент списка с классом .list__item, для того, чтобы показать активный элемент в данный момент (выбран пользователем) или нет, можно просто добавить класс (.list__item—active), а не прописывать все стили, присущие этому классу в JS:
document.querySelector(‘.list__item’).style.color = ‘red’;
и т.д.
Небольшой пример с возможными способами присваивания класса (присвоение модификатора происходит при нажатии на зелёный квадрат):
http://jsbin.com/
.
Не рекомендуется решать задачи, которые явно относятся к уровню CSS с помощью JavaScript, пытаясь как-то выровнять объект или добавить ему стили при наведении и пр.
Опять-таки, возвращаясь к теме Mobile First, нельзя не упомянуть о 2-х концепциях, которые коррелируют с данной техникой. Progressive Enhacement и Graceful Degradation, что переводится как прогрессивное улучшение и последовательное ухудшение. Данные принципы описывают 2 разных подхода к разработке: в первом случае мы разрабатываем наш сайт, пишем скрипты с учётом старых браузеров и систем или же определяем поведение при невозможности запуска скриптов, а затем постепенно улучшаем скрипт, вводя современные функции и методы, таким образом мы получаем сайт, который будет одинаково хорошо работать в старых и новых браузерах и средах (то же касается и css).
При Graceful Degradation подход противоположный – мы разрабатываем для современных браузеров и, лишь, потом начинаем вносить доработки и изменения с учётом старых версий.
Подход Mobile First чем-то схож с Progressive Enhacement.
Проверка кода
После написания html, css и js для нашей страницы необходимо проверить всё ли сделано верно. Для этого можно использовать online средства:
Благодаря данным сервисам можно проверить не забыли ли вы где-то закрыть тэг, верно ли используете параметры и атрибуты, всё ли в порядке с вашими стилями и правилами в них, а так же проверить ваш код на правильность написания функций, методов и пр.
Статьи с рекомендациями по написанию JS, HTML и CSS:
Средства автоматизации
На сегодняшний день практически все рутинные процессы разработки (за исключением дизайна) можно в той или иной степени автоматизировать.
960GS
Мы уже говорили об этом средстве разработки в разделе про модульные сетки и дизайн. Нужно сказать, что 960GS предлагает не только макеты для создания дизайна, но и свою систему именования классов. Используя предлагаемые классы при вёрстке и при подключении css файла системы в проект, блоки сайта будут выстроены по этой сетке, что сэкономит время на написании практически того же самого самостоятельно.
<div>
<div>
<div>
...
</div>
<div>
...
</div>
<div>
...
</div>
</div>
<div>
...
</div>
</div>
Emmet
Emmet – это средство работы с html и css (
http://emmet.io/
). Плагин для работы с данным средством можно установить, например, в Sublime Text, тогда у вас появляется возможность не писать громоздкие куски кода на html и css, а записывать их в строчку, раскрывая затем в полноценную разметку. Например, строка
.block>ul.list>li.list__item*3
, может быть раскрыта в полноценный код:
<div>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>
Затем вам просто необходимо вписать текстовые значения в элементы списка. То же касается и css: строка
w:100px+h:150px+bgc:#ff0
раскрывается в:
width: 100px;
height: 150px;
background-color: #ff0;
Благодаря данным средствам писать код становится быстрее и приятнее, так как вы меньше времени тратите на написания закрывающих блоков, переходам по строчкам, а так же уменьшается возможность, касательно html, не закрыть тот или иной элемент разметки. В плане CSS, например, становится легче работать с браузерными префиксами, так как одна строчка с CSS3 свойством может быть раскрыта в несколько с добавлением необходимых префиксов.
Jade
Далее стоит упомянуть и о таком языке работе с шаблонами, как jade (
http://jade-lang.com/
). Опять-таки, с помощью jade писать html становится быстрее и удобнее, а так же появляется возможность создания переиспользуемых блоков кода и миксинов, передавая которым на вход те или иные параметры мы будет получать нужную нам разметку. Благодаря jade в проекте, касательно разметки и написания страниц, может поддерживаться модульность, а часто используемые названия и блоки кода могут выноситься в качестве переменных (названия, имена страниц и пр.) или миксинов в отдельные файлы настроек и файлы, соответственно. Для работы с jade, а точнее для преобразования написанного кода из jade в html, необходимо использовать командную строку, а так же установить на ваш компьютер платформу nodejs (
https://nodejs.org/en/
,
http://nodejs.ru/
).
Командная строка
Работа в командной строке так же может ускорить некоторые этапы работы над проектом, например, создание папок и файлов. Запустив консоль в директории проекта и набрав в ней всего лишь одну строку:
mkdir project && cd project && mkdir css && touch css/styles.css && mkdir images && mkdir js && touch js/app.js && touch index.html
После нажатия enter мы получим папку project в которой будут находиться папки css, images, js, в папках css и js файлы styles.css и app.js, соответственно, а в корне project лежать файл index.html. Таким образом мы сэкономили время на создание папки, написание её названия, создание файлов и пр. Так же командная строка используется для работы с остальными средствами автоматизации.
Sass
Далее стоит поговорить о таком языке как Sass (
http://sass-lang.com
/). Данный язык упрощает работу с css. Благодаря Sass можно записывать вложенные классы, проводить математические вычисления прямо в коде, выносить переиспользуемые величины в качестве переменных в отдельные файлы или в начало файла, что в значительной степени упрощает дальнейшую работу со стилями и упрощает изменение тех или иных величин, так как они все будут храниться в одном месте и не нужно будет «ходить» по всему проекту и вносить соответствующие правки. Так же, благодаря Sass в проекте можно придерживаться принципа модульности, храня части разметки в соответствующих файлах и подключать их все в основной, затем с помощью консольной команды можно собрать весь код в один css файл, так же поддерживается сборка результирующего файла на лету по мере написания стилей. Опять-таки для работы с Sass потребуется командная строка. Процесс установки пакета можно изучить здесь:
http://sass-lang.com/install
.
HTML5Boilerplate
HTML5Boilerplate (
https://html5boilerplate.com/
) представляет собой заранее скомпонованный проект, в котором уже есть index.html, normalize.css и пр. В index.html, например, уже заранее прописаны основные куски кода, которые необходимы при написании html страницы. Проект позволяет скачать архив со всеми файлами как есть или же использовать кастомную сборку:
http://www.initializr.com/
. Опять-таки, принцип прост: зачем тратить время на написание одних и тех же строк или на проделывание одних и тех же манипуляций, если мы сразу можем сосредоточиться непосредственно на работе с проектом.
Gulp и Grunt
Gulp (
http://gulpjs.com/
) и Grunt (
http://gruntjs.com/
) представляют собой сервисы запуска задач, которые описываются в основных файлах данных сервисов, выполняются с помощью совместимых модулей и запускаются на выполнение с помощью консоли.
Данные сервисы помогают использовать в разработке, например, вышеописанные средства Jade и Sass, автоматически преобразовывать их в соответствующие файлы html и css, сжимать их, если необходимо, а так же проверять, например css свойства, на необходимость использования браузерных префиксов и подставлять их в автоматическом режиме.
Оба сервиса используют различный подход в описании выполнения задач, но суть их работы одинакова. Полезным будет данное сравнение: http://frontender.info/gulp-grunt-whatever/
Так же многие сервисы вроде autoprefixer (автоматическая простановка браузерных префиксов), jshint (проверка JS кода на валидность) могут быть установлены как сторонние плагины в текстовом редакторе (Sumblime Text, Atom, Brackets) и инициализированы при нажатии определённого сочетания клавиш.
Bootrstrap, Foundation, Material Design Lite
Данные фрэймворки уже упоминались в разделе про дизайн. Но стоит опять вспомнить о них, так как они, в определённой степени, помогают автоматизировать процесс разметки веб-страницы и работы с ней.
При подключении файлов фрэймворков в проекте мы можем использовать определённые в них классы и сниппеты разметки, которые будут работать по уже описанным правилам и иметь установленный внешний вид (например, кнопки, поля ввода, таблицы и пр.). Таким образом мы экономим время, например, на описание расположения блоков дизайна, их размеров в зависимости от разрешения, внешний вид полей формы, кнопок и их состояния.
Со всеми возможностями и примерами можно ознакомиться на соответствующих сайтах:
Данное описание не является исчерпывающим и представляет собой лишь поверхностный взгляд на некоторые технологии. Но прежде чем пускаться во все тяжкие, используя средства автоматизации, библиотеки, framework’и, готовый код и прочее, стоит, всё-таки, изучить основы работы с html, css и js.
Надеюсь, что все описанные вещи будут полезны вам в изучении темы веб-дизайна и фронтенд разработки.
Создание Сайта на WordPress: Пошаговое Руководство
Мы не откроем Америку, если скажем, что сайт уже давно стал необходимостью для любого бизнеса, организации или даже личных проектов, а WordPress — одной из самых популярных платформ. Однако не все знают, как сделать сайт. В этом руководстве пошагово описано создание сайта на WordPress. Так что, если вы хотите пройти через весь процесс самостоятельно, поехали!
Начинаем Путешествие по WordPress
Итак, как же создать сайт WordPress? На самом деле это не так сложно, как вы думаете. В конце концов, WordPress — это система управления контентом, которая создавалась для людей, обычных пользователей, специально для того, чтобы помочь им с запуском сайтов. Следуйте нашему руководству и уже к обеду у вас будет собственный сайт/блог.
1. Определяем Тематику Контента
Создание сайта на WordPress, как и любого другого сайта, начинается с определения типа ресурса. Что вы хотите создать: блог, интернет-магазин, сайт-визитку вашей компании и т.д.?
Рекомендуем к прочтению наши статьи о различных типах сайтов (англ) и блогов.
Если вы создаёте сайт для личного пользования, выберите тему, на которой будет сосредоточен ваш сайт. Другими словами, выберите нишу, в которой вы будете работать и создавать контент.
Это может быть что угодно: фотографии, путешествия, кулинария и другое. Выберите что-то интересное для вас, чтобы со временем создание контента по этой теме не стало чем-то обременительным.
После выбора ниши, следует подумать о конечной цели вашего сайта. Планируете ли вы монетизировать его или это просто увлечение? Какие бы цели вы ни ставили перед собой, убедитесь, что они последовательны.
Вам также следует определиться с целевой аудиторией: кому будет полезен ваш ресурс? Отталкиваясь от этого, подберите правильный формат, стиль и тон контента.
2. Выбор Доменного Имени
Еще один важный шаг, над которым нужно хорошенько продумать — выбор домена. Доменное имя будет представлять ваш бренд, это первое, на что обращают внимание посетители. Убедитесь, что он отображает идею вашего сайта.
Что общего между Википедией, YouTube и Netflix? Краткое и уникальное имя, которое легко написать и вспомнить. Именно таким должно быть доменное имя. Вы не хотите терять посетителей только потому, что ваш домен сложно запомнить или написать правильно.
Существуют специальные генераторы доменных имён, которые помогут вам справится с этой задачей.
Если вы довольны выбранным именем, самое время проверить, доступно ли оно, и зарегистрировать его. Здесь, в Hostinger, вы можете приобрести домены с расширением .xyz, .online или .store менее чем за 1$, а домен .com — всего за 508₽.
3. Выбираем Хостинг
Для запуска сайта WordPress вам нужно найти правильный хостинг. Есть несколько важных моментов, которые следует учитывать при выборе провайдера:
- Что вам нужно: сколько ресурсов понадобится вашему сайту, каков ваш план на следующие 12 месяцев и насколько большой он будет.
- Время безотказной работы. Важно, чтобы ваш сайт работал и работал стабильно 24/7/365. Убедитесь, что хостинг гарантирует это.
- Служба поддержки. Если всё-таки так случилось, что ваш сайт не работает или у вас возникли какие-либо проблемы, важно, чтобы вы могли обратиться в службу поддержки за помощью.
- Прост в использовании. Многие владельцы веб-сайтов не имеют опыта программирования. Панель управления должна быть удобной и простой в навигации.
- Доступность. Бюджет и затраты — не последнее, что играет роль при запуске сайта. Вы не хотите платить деньги за хостинг, который не отвечает вашим потребностям.
И немножко рекламы: если вы задумываетесь про хостинг в Hostinger, забегая на перёд, скажем, что вы получите всё, что мы перечислили выше. Мы предлагаем недорогой, но качественный хостинг, поддержку клиентов онлайн, 99.9% аптайма и многое другое.
Вот краткий обзор общих планов хостинга Hostinger:
Кроме того, мы предлагаем WordPress хостинг, тарифные планы которого по умолчанию оптимизированы под эту CMS.
4. Установка WordPress
Как же установить WordPress? Ещё одно преимущество хостинга Hostinger — это удобная установка WordPress всего в несколько кликов из панели управления.
Вот как это происходит:
1. Зайдя в личный кабинет Hostinger, щёлкните значок Автоустановщика на панели инструментов.
2. Найдите кнопку WordPress и просто нажмите на неё.
3. Введите необходимые данные:
- URL — ваш зарегистрированный домен или адрес вашего сайта WordPress.
- Язык — выберите основной язык для WordPress.
- Имя администратора — имя пользователя, которое вы будете использовать для входа в панель управления WordPress.
- Пароль администратора — пароль, который вы должны ввести, чтобы войти в админку WordPress.
- Электронная почта администратора — введите активный адрес электронной почты, так как он будет использоваться для уведомлений и сброса пароля.
- Заголовок сайта — заголовок вашего сайта
- Тэглайн сайта — слоган или краткое описание того, о чём ваш сайт.
4. Нажмите на кнопку Установить.
5. Выбор Темы
Прежде чем запустить сайт, нужно убедиться, что он выглядит и работает хорошо.
Разные типы блогов или сайтов требуют разных макетов и тем. Дизайн интернет-магазина отличается от дизайна блога.
Огромный плюс в WordPress — огромное количество тем на выбор.
Темы WordPress бывают платные и бесплатные. Среди популярных бесплатных тем WordPress — Zakra, Shapely и Flash.
В то время как Uncode, Divi и X являются одними из рекомендуемых платных тем.
Вы можете просмотреть галерею тем WordPress и выбрать ту, которая соответствует вашим потребностям. Если вам нужна дополнительная информация о бесплатных темах, рекомендуем прочитать нашу статью на эту тему.
Чтобы установить тему, просто войдите в свою панель управления WordPress и наведите курсор на вкладку “Внешний вид”. Выберите “Темы” и нажмите “Добавить новую”. Найдите нужную тему WordPress и наведите на неё курсор, затем нажмите кнопку “Установить”.
Подробное руководство вы можете найти в нашей статье о том, как установить темы WordPress.
6. Установка Плагинов
Создание сайта на WordPress также включает подбор и установку плагинов. WordPress предоставляет множество плагинов, которые помогут расширить функционал вашего сайта, например, расширить административные функции, настроить защиту сайта и многое другое.
Вот некоторые из основных плагинов, с которых вы можете начать:
- WooCommerce — полезный плагин, с помощью которого вы можете превратить ваш сайт в интернет-магазин. Идеально подходит для тех, кто хочет продавать свои продукты или услуги через сайт WordPress.
- Yoast SEO — один из лучших плагинов для поисковой оптимизации (SEO). С его помощью, вы сможете публиковать более качественный, оптимизированный для поиска контент.
- W3 Total Cache ускорит загрузку вашего сайта на устройствах читателей при последующих посещениях.
- Keyy Two Factor Authentication — плагин для безопасности, защитит ваш сайт от несанкционированного доступа, запрашивает подтверждение личности через дополнительное устройство.
Как установить плагины:
- Перейдите в раздел плагинов в административной панели WordPress.
- Затем нажмите кнопку “Добавить новый” в верхней части страницы.
- Введите ключевое слово для поиска нужного вам плагина в поисковой строке, затем нажмите кнопку “Установить” возле названия плагина. Или, если вы скачали плагин заранее, просто нажмите “Загрузить плагин”. Затем “Выберите файл” — выберите архив с плагином на вашем компьютере и нажмите “Установить”.
- Чтобы активировать плагин, после процесса установки, нажмите “Активировать”.
Подробную инструкцию вы найдёте в нашей статье о том, как установить плагины для WordPress.
Как только вы всё это сделаете, приступайте к запуску сайта.
Что дальше?
Вот видите, создание сайта на WordPress — не такой уж и сложный процесс!
Тем не менее, это только начало вашего онлайн-путешествия. Следующим шагом будет создание аудитории. Другими словами, трафик. Для этого начните продвигать свой сайт, например, в социальных сетях.
Также советуем прочитать нашу статью о том, как привлечь трафик на сайт.
Чтобы облегчить вашу работу по продвижению сайта WordPress, установите плагин Google Analytics.
Следите за статистикой вашего сайта и лучше изучите посетителей. Вы сможете быстро увеличить свой трафик, если будете понимать, что нравится посетителям или наоборот заставляет их уйти из вашего сайта, и как они его используют.
Следите за обновлениями WordPress, тем и плагинов. Таким образом, вы сможете улучшить производительность вашего сайта, вовремя исправляя ошибки, добавляя новые функции и повышая безопасность.
Выводы
Теперь вы понимаете, как происходит создание сайта на WordPress и что это совсем не сложно! Самый трудоёмкий и кропотливый этап работы — это этап планирования самого процесса. Мы надеемся, что наше руководство поможет вам реализовать ваши идеи и в скором времени создать и запустить собственный сайт. Давайте ещё раз напомним, что вам предстоит сделать:
- Определится с тематикой контента на сайте: выберите нишу, сформулируйте свои цели и определите целевую аудиторию.
- Выбрать доменное имя. Придумайте короткое, простое и запоминающееся доменное имя.
- Выбор хостинга. Напомним, что Hostinger предлагает надёжный хостинг по доступной цене.
- Установка WordPress. WordPress можно установить через панель управления Hostinger всего несколькими щелчками мыши.
- Выбор темы. Создайте сайт по своему вкусу с помощью тем WordPress.
- Установка плагинов: расширьте функциональность вашего сайта с помощью плагинов WordPress.
Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.
Как создать сайт на Mac
Создание собственного сайта может показаться сложной задачей, но, в зависимости от типа сайта, который вы хотите создать, это, вероятно, проще, чем вы думаете. Здесь мы покажем вам, как сделать сайт с помощью компьютера Mac.
Эта статья поможет вам начать создание базового веб-сайта с собственной регистрацией домена (например, www.macworld.co.uk), к которой вы можете добавлять статьи. Для чего-то более сложного, мы бы порекомендовали онлайн-курсы Udemy по веб-разработке.
Для чего-то еще более простого, такого как блог, мы рекомендуем посетить статью нашего технического консультанта, как начать блог.
Что нужно для создания сайта
Если вы хотите создать сайт, то есть вещи, о которых вам нужно подумать:
- Получение хостинга для вашего сайта.
- Покупка собственного домена для вашего сайта.
- Разработка и создание вашего сайта.
Конечно, это только начало, и есть гораздо больше возможностей для создания сайта, чем мы можем описать здесь, но вы обнаружите, что это ставит вас на правильный путь и должно дать вам базовый веб-сайт, который вы можете разработать.
Как разместить свой собственный сайт
Веб-сайтам требуется хостинг на сервере, чтобы их можно было показывать людям по всему миру.
Самый простой способ разместить свой сайт — арендовать место на сервере. Это будет стоить вам несколько фунтов в месяц, и многие предлагают дополнительные функции, такие как веб-почта и решения для резервного копирования.
Там нет недостатка в услугах хостинга там, и есть много споров о том, какой из них лучше. Вот несколько популярных имен, которые помогут вам начать:
- 123-reg: Один из крупнейших мировых провайдеров доменных и хостинговых услуг.
- GoDaddy: глобальный бренд, на котором размещены самые разные сайты в Великобритании.
- SiteGround: известная американская хостинговая компания, которая быстро поддерживает клиентов во всем мире.
- TSOHost: популярен среди новичков и имеет хорошую интеграцию с WordPress.
- FatCow: надежный с хорошей поддержкой. Популярный выбор для малого бизнеса.
- 11: Великолепное обслуживание в Великобритании. Предлагает хостинг по очень низкой цене.
Какой вы идете, зависит от вас. Одна из команд Macworld в настоящее время использует SiteGround для размещения своего веб-сайта и обнаружила, что она блестяще справляется со своей работой, но мы недостаточно лично протестировали остальных, чтобы предложить окончательный вердикт о том, что лучше.
Получение доменного имени для вашего сайта
Выбрав хостинг и зарегистрировавшись на нем, вы приобрели небольшую часть сети, которая имеет собственный IP-адрес (Интернет-протокол). IP-адрес — это серия из четырех наборов чисел, разделенных точками остановки (например, 123.123.12.32). Ввод этого IP-адреса в веб-браузер доставляет его на сервер через Интернет и возвращает связанный с ним веб-сайт.
Очевидно, что никто не запоминает эти IP-адреса, поэтому вам нужно получить более удобное для пользователя имя, например «johnswebsite.co.uk», или как вы хотите его называть. Это удобное для пользователя имя называется доменом (хотя оно строго ссылается на бит в конце, бит «.co.uk» или «.net»)
Вы делаете это путем проверки вашего предпочтительного имени и домена на сайте регистрации домена. Если он доступен, вы можете арендовать его на год и привязать к своему IP-адресу. Теперь, когда кто-то выходит в сеть и входит в домен, он берет его на ваш IP-адрес, по которому будет жить ваш веб-сайт.
В Великобритании существует множество служб регистрации доменов, и 123-Reg.co.uk, кажется, является популярным выбором. Но если вы сможете получить регистрацию домена через свою хостинговую компанию, им будет проще связать домен напрямую с вашей услугой хостинга, а также легче вносить изменения в дальнейшем.
Как создать сайт на Mac
После того, как вы настроили хостинг и регистрацию доменного имени, пришло время собрать ваш сайт. Есть много способов сделать это: большинство основных веб-сайтов объединяются с использованием HTML-документов, CSS-документов (для дизайна и верстки) и файлов изображений. HTML и CSS отнюдь не сложны в изучении, и изучение базового HTML — хорошая идея, если вы планируете заняться веб-дизайном.
Мы рекомендуем проверить курсы Udemy по HTML и CSS, если вы решите пойти по этому пути. Однако большинство людей пропускают кодирование сайта вручную и используют либо программу для разработки сайта, либо онлайн-CMS (систему управления контентом), такую как WordPress.
Мы думаем, что создание сайта на WordPress — лучший способ создать сайт, на который можно регулярно добавлять статьи. WordPress загружается с веб-сайта WordPress.org. Это отличается от веб-сайта WordPress.com. WordPress.com используется для создания личных домашних страниц, которые заканчиваются на WordPress.com (например, mysite.wordpress.com), а WordPress.org используется для загрузки полной системы WordPress и ее установки на вашем сайте.
Затем вы можете выбрать из собственных тем WordPress дизайн своего сайта или выполнить поиск по темам WordPress в Google, чтобы найти тысячи доступных для покупки. Процесс разработки страниц и контента для вашего сайта будет отличаться в зависимости от выбранной темы, но большинство из них имеют подробные руководства и поддержку, которые помогут вам сориентироваться.
Если вы решите против WordPress, есть различные альтернативы. Вот некоторые из самых популярных вариантов программного обеспечения для веб-дизайна для Mac:
- Realmac RapidWeaver
- Карелия Sandvox
- Blocs
Чтобы получить дополнительные предложения, взгляните на нашу сводку лучших программ для веб-дизайна для Mac.
Как сделать веб-сайт с Bootstrap
Узнайте, как создать адаптивный веб-сайт с помощью платформы CSS Bootstrap.
Создание веб-сайта с помощью Bootstrap
«проект макета»
Перед созданием веб-сайта может быть целесообразно нарисовать черновик макета страницы:
Side Content
Some text some text..
Main Content
Some text some text..
Some text some text..
Some text some text..
Первый шаг-базовая HTML страница
HTML — это стандартный язык разметки для создания веб-сайтов, а CSS — это язык, описывающий стиль HTML-документа. Мы будем сочетать HTML и CSS для создания базовой веб-страницы.
Примечание: Если вы не знаете, HTML и CSS, мы предлагаем вам прочитать HTML учебник.
Пример
Page Title
body {
font-family: Arial, Helvetica, sans-serif;
}
<h2>My Website</h2>
<p>A website created by me.</p>
</body>
</html>
Пример как работает
<!DOCTYPE html>
Декларация определяет этот документ как HTML5<html>
элемент является корневым элементом HTML-страницы<head>
элемент содержит мета-информацию о документе<title>
элемент задает заголовок документа<meta>
элемент должен определить кодировку UTF-8<meta>
элемент с именем = «видовой экран» делает веб-сайт хорошо выглядеть на всех устройствах и разрешение экрана<style>
элемент содержит стили для веб-сайта (макет/дизайн)<body>
элемент содержит видимое содержимое страницы<h2>
элемент определяет большой заголовок<p>
элемент определяет абзац
Создание содержимого страницы
Внутри <body>
элемента нашего сайта, мы будем использовать наш «макет проекта» и создать:
- A header
- A navigation bar
- Main content
- Side content
- A footer
Заголовка
Заголовок обычно находится в верхней части веб-сайта (или прямо под верхним навигационным меню). Он часто содержит логотип или название сайта:
<div>
<h2>My Website</h2>
<p>A website
created by me.</p>
</div>
Затем мы используем CSS для стиля заголовка:
.header {
padding: 80px; /* some padding */
text-align: center; /* center the text */
background: #1abc9c;
/* green background */
color: white; /* white text color */
}
/* Increase the font size of the <h2> element */
.header h2 {
font-size: 40px;
}
Панель навигации
Панель навигации содержит список ссылок, помогающих посетителям перемещаться по веб-сайту:
<div>
<a href=»#»>Link</a>
<a href=»#»>Link</a>
<a href=»#»>Link</a>
<a href=»#»>Link</a>
</div>
Используйте CSS для стиля панели навигации:
/* Style the top navigation bar */
.navbar {
overflow: hidden; /* Hide overflow */
background-color: #333;
/* Dark background color */
}
/* Style the navigation bar links */
.navbar
a {
float: left; /* Make sure that the links stay
side-by-side */
display: block; /* Change the display to
block, for responsive reasons (see below) */
color: white; /* White text color */
text-align: center;
/* Center the text */
padding: 14px 20px; /* Add some padding */
text-decoration: none;
/* Remove underline */
}
/*
Right-aligned link */
.navbar a.right {
float: right;
/* Float a link to the right */
}
/*
Change color on hover/mouse-over */
.navbar a:hover {
background-color: #ddd; /* Grey background color */
color: black;
/* Black text color */
}
Содержимого
Создайте макет из 2 столбцов, разделенный на «боковое содержимое» и «основное содержимое».
<div>
<div>…</div>
<div
class=»main»>…</div>
</div>
Мы используем CSS Flexbox для обработки макета:
/* Column container */
.row {
display: -ms-flexbox;
/* IE10 */
display: flex;
-ms-flex-wrap:
wrap; /* IE10 */
flex-wrap: wrap;
}
/* Create
two unequal columns that sits next to each other */
/* Sidebar/left column
*/
.side {
flex: 30%; /* Set the width of the sidebar
*/
background-color: #f1f1f1; /* Grey background color
*/
padding: 20px; /* Some padding */
}
/* Main column */
.main {
flex: 70%; /* Set the width of the main content */
background-color: white; /* White background color */
padding: 20px; /* Some padding */
}
Затем добавьте мультимедийные запросы, чтобы сделать макет отзывчивым. Это позволит убедиться, что ваш сайт хорошо смотрится на всех устройствах (настольных компьютерах, ноутбуках, планшетах и телефонах). Измените размер окна обозревателя, чтобы увидеть результат.
/* Responsive layout — when the screen is less than 700px wide, make the two
columns stack on top of each other instead of next to each other */
@media
(max-width: 700px) {
.row {
flex-direction: column;
}
}
/*
Responsive layout — when the screen is less than 400px wide, make the
navigation links stack on top of each other instead of next to each other */
@media (max-width: 400px) {
.navbar a {
float: none;
width: 100%;
}
}
Нижний колонтитул
Наконец, мы добавим нижний колонтитул.
<div>
<h3>Footer</h3>
</div>
И стиль его:
.footer {
padding: 20px; /* Some padding */
text-align: center; /* Center text*/
background: #ddd;
/* Grey background */
}
Поздравляю! Вы создали сайт с нуля.
Преимущества создания веб-сайта с нуля
Преимущества создания веб-сайта с нуля обсуждаются Оуэном Фаром, специалистом по полному стеку. Запуск процесса с нуля заставляет вас думать на более высоком уровне, чтобы достичь определенного дизайна с минимальными минимальными усилиями. Каждый фрагмент кода существует, потому что он предназначен для этого. У него есть смысл, своя цель. Я ненавижу видеть ненужные данные в местах, которые занимают только место. Я хочу контролировать каждую часть технологического цикла.Это может быть не идеально, может быть, даже не в соответствии с веб-рекомендациями, но это то, как вы учитесь!
Оуэн Фар
Full Stack Engineer
Большинство людей, с которыми я разговариваю по поводу разрабатываемого мной продукта или веб-сайта, обычно спрашивают, использую ли я какие-либо фреймворки или библиотеки. Когда я говорю «нет», они обычно очень удивляются и спрашивают: «Почему !? Библиотекой пользоваться намного проще, и это экономит много времени на разработку ». Они заставляют меня снова и снова сомневаться в себе, но каждый раз я подтверждаю, что принял правильное решение.Каждая строчка кода, делающая мой продукт живым, написана мной, моим собственным мышлением и моими собственными творческими идеями. Это может быть не идеально, может быть, даже не в соответствии с веб-рекомендациями, но это то, как вы учитесь!
Я должен признать, что это не только сделало мое кодирование более эффективным и управляемым, но и каждый фрагмент кода здесь, потому что он предназначен для этого. У него есть смысл, своя цель. Я ненавижу видеть ненужные данные в местах, которые занимают только место. Я хочу контролировать каждую часть технологического цикла.Когда я думаю о сети, я думаю не только об эффективности, но и о времени загрузки и весе каждого запроса с вашего компьютера, туда и обратно на сервер. Как мы можем улучшить это? Как мы можем сделать это лучше для пользователя?
Сегодня я расскажу об основных преимуществах создания сайта с нуля. В основном я буду рассматривать теоретические аспекты и делюсь своими мыслями из своего опыта веб-разработки.
Вы владеете кодом, вы его контролируете!
Щелкните правой кнопкой мыши — новый файл.Пустая страница — мигающий курсор. Момент, когда ваши творческие идеи ждут написания и начинается азарт для нового проекта. Это такое прекрасное чувство — начать разработку построчно и превратить свои идеи и фантазии в настоящий рабочий цифровой продукт. Вы постоянно стремитесь сделать свой веб-сайт максимально чистым и эффективным. Даже если это только начало, и часть вашего кода может быть несовершенной, вы все равно прекрасно относитесь к той работе, которую делаете. Вы гордитесь этим. Вы видите, как накапливаются файлы разработки, и понимаете, как много вы сделали еще до того, как узнали об этом.Продукт или веб-сайт начинают обретать форму. Вы начинаете контролировать свой код.
Напротив, представьте себе, что теперь, открывая новый шаблон Bootstrap, вы смотрите на код, начинаете его изменять и находите уловки, чтобы заставить его работать так, как вы это себе представляли. Файлы начинают запутываться, большая часть кода фактически пишется для замены настроек фреймворков по умолчанию. Если вы спросите меня, это худший из возможных методов веб-разработки, но, к сожалению, многие ранние разработчики в конечном итоге идут по этому пути.Делая это, вы не учитесь, это просто манипулирует готовым кодом. Как вы можете ожидать получения новых навыков и продвижения таким образом? Как вы узнаете о новых веб-технологиях, если все, что вам нужно сделать, это перейти на последнюю версию фреймворка?
Поверьте мне, видеть готовый к отправке конечный продукт, зная, что все делаете вы сами, — это незаменимое чувство . Только вы знаете, что нужно было, чтобы попасть туда. Это определенно стоит усилий. Вы учитесь на своих ошибках, вы продолжаете совершенствовать свои навыки.Вы знаете все о структуре сайта, легко можете ее поддерживать. Теперь все под вашим контролем.
Будьте уникальны и креативны в своем процессе дизайнерского мышления
Вы создаете веб-сайт на основе собственного вдохновения и вкуса . Каждая часть дизайна присутствует, потому что вы, думали об этом, и это соответствует вашему уровню ожиданий. Не бойтесь мыслить нестандартно и экспериментировать с разными техниками. Не стесняйтесь и ищите свой собственный подход для достижения определенных функций.В большинстве случаев вы поймете, что в любом случае это происходит именно так. Настоятельно рекомендуется провести мозговой штурм, прежде чем отказываться от дела и искать в Интернете. В конце концов, вы всегда можете дважды проверить свою работу с другими, если у вас есть какие-либо сомнения относительно совместимости или поддержки. Запуск процесса с нуля заставляет задуматься на более высоком уровне, чтобы достичь определенного дизайна с минимальными усилиями. Это то, что делает ваш код уникальным и учит, как стать профессионалом. Вы знакомитесь со средой веб-разработки.
Легко находите ошибки, проблемы с производительностью и проблемы с дизайном.
Когда вы пишете весь код своего веб-сайта или продукта, вы неизбежно знакомитесь со всей структурой. Это значительно упрощает поиск того, что вызывает ошибку, вызывает ошибку или сбой в дизайне. Не тратьте время зря на поиски иголки в стоге сена. Нет лишнего кода, который вам нужно пройти, или включить хаки для исправления ошибки, вызванной фреймворком или библиотекой.
Мне показалось полезным оставлять строчные комментарии и писать документацию на протяжении всего процесса разработки. Сделайте это привычкой! Вы удивитесь, насколько легко можно запутаться, когда вы вернетесь к своему коду, чтобы настроить или реализовать новую функцию. Комментарии улучшат вашу продуктивность и значительно сократят ожидаемое время разработки, чтобы поддерживать ваш продукт в будущих обновлениях.
Сильно улучшите свои навыки программирования и дизайна
Как мы уже упоминали выше, создание вашего веб-сайта с самой первой строчки кода заставляет вас искать и продолжать учиться, чтобы достичь того, о чем вы мечтаете.Вы заставляете себя исследовать, как необходимые функции могут быть реализованы изначально без использования библиотек (это обычно более распространено для кодирования JavaScript, например, для создания настраиваемого модального окна, которое показывает приветственное сообщение для нового пользователя). Это то, что заставляет вас двигаться вперед — вы постоянно ищете новые способы и техники для написания и улучшения вашего кода.
Оптимизация производительности вашего веб-сайта
Моя предыдущая статья была посвящена тому, как радикально улучшить производительность вашего веб-сайта.Ниже приведены два основных преимущества того, как создание веб-сайта с нуля может повлиять на производительность вашего веб-сайта:
- В ваших файлах разработки нет ненужного кода . Дополнительный код означает дополнительное время для загрузки сайта. Все строки кода, написанные для веб-сайта, присутствуют только потому, что они необходимы. Библиотеки или фреймворки добавляют весь этот беспорядок и ненужный код для сотен трюков и функций, которые 90% вашего веб-сайта не будут использовать.
- Оптимизировано для ваших конкретных требований. Если вы уже знаете, что хотите разработать, вы создаете структуру, оптимизированную специально для этого сайта. Это делает ваш сайт очень эффективным!
Не позволяйте производительности отставать. Сохраняйте мотивацию к оптимизации производительности своего веб-сайта, стремясь получить наилучшие результаты по аналитике скорости страницы Google.
Эксперименты с новыми технологиями
Владение кодом вашего личного веб-сайта или продукта означает, что это также может быть ваша игровая площадка.Продолжайте практиковаться в применении новых технологий и достижений на своем собственном сайте. Гораздо проще реализовать новую технологию или функцию с помощью существующего кода, потому что теперь вы знаете, как все это работает, вы уже знакомы со структурой веб-сайта. Это очень важно для того, чтобы ваш сайт оставался адаптируемым, перспективным и прогрессивным. Это поддерживает мотивацию к обучению, улучшая и поддерживая ваш веб-сайт в соответствии с новейшими веб-технологиями.
Заключительные мысли
Как мне поддерживать мой веб-сайт в актуальном состоянии?
Рефакторинг кода .Если вы боитесь рефакторинга или постоянного обновления кода, вам следует вообще пересмотреть свое решение стать разработчиком. Это то, что вы должны знать с самого начала, прежде чем погрузиться в веб-разработку. Какой бы язык вы ни использовали, вы можете легко быть в курсе событий, подписавшись на еженедельные информационные бюллетени и обновления из авторитетных блогов на выбранном вами языке. Таким образом, вы будете знать, устареет ли какая-либо функция в ближайшее время, и подготовить свой код для будущих выпусков.Это также заставляет вас не лениться и не оставлять свой сайт устаревшим. Многие веб-сайты по-прежнему используют библиотеки или фреймворки, которым уже много лет, и переходить с одной версии на другую становится все труднее. Чистые методы кодирования (при правильном использовании) могут длиться десятилетия или более, поскольку они написаны так, как было предложено при первоначальной подготовке веб-сайта или продукта. Не позволяйте этому стать причиной для перехода или создания нового веб-сайта с нуля. Рефакторинг вашего кода станет основным ингредиентом, который поднимет вас на более высокий уровень и поможет опередить ваших конкурентов!
Не бойтесь плохо написанного кода, все профессиональные веб-разработчики сегодня писали беспорядочный код и раньше. Если вы не начнете с изучения основ веб-разработки, вы привыкнете к простоте поиска готовых шаблонов или фрагментов кода. Это уменьшит количество усилий, которые вы в противном случае приложили бы для получения новых знаний. Единственный способ продолжать улучшаться и становиться лучше — это начать возиться с кодом прямо сейчас.Это позволит вам освоить язык и не бояться решать новые задачи!
Спасибо за внимание!
Вы также можете посмотреть мою электронную книгу здесь — Mastering Web Development
До следующего раза,
Оуэн Фар
P.S. Следуйте за мной здесь или подпишитесь на мой информационный бюллетень, если вы хотите и дальше изучать важные секреты веб-разработки.
Больше от Оуэна Фар:
Истории по теме
Теги
Присоединяйтесь к Hacker Noon
Создайте бесплатную учетную запись, чтобы разблокировать свой собственный опыт чтения.
Преимущества разработки сайта с нуля | автор: Мелисса Крукс
https://cdn.pixabay.com/photo/2019/01/31/20/52/web-3967926_960_720.jpg
Платформы для создания веб-сайтов предоставляют возможность разработки и создания сайта на кончиках ваших пальцев без необходимость знать о языках разметки или о том, как кодировать. Эти платформы часто предлагают визуальный редактор с характеристиками перетаскивания, так что вы можете выбрать только тот элемент, который хотите добавить на сайт.
Как разработчик, вы могли попробовать некоторые из этих сервисов, просто чтобы проверить их работоспособность.Возможно, вы даже думали, что можете использовать его для создания простых веб-сайтов. В этой статье мы упоминаем о некоторых недостатках этой службы и о том, почему вам следует начать писать собственный код с нуля.
Вам не нужно нести дополнительные расходы для создания веб-сайта
Хотя существует множество услуг для создания веб-сайтов, многие из них имеют ограниченные бесплатные функции. Это очевидно, потому что для того, чтобы оставаться прибыльной компанией, пользователи должны быть готовы платить за все предлагаемые функции.Обычно пользователи, которые выбирают бесплатную версию платформы, не только имеют ограниченный доступ к функциям и функциям, но также получают баннеры и другие виды рекламы на своем веб-сайте. У них также есть ограниченное пространство для хранения, поэтому они не могут использовать столько изображений, сколько хотят. Это некоторые из ограничений, которые эти платформы представляют для пользователей, чтобы убедить себя заплатить за план, который предлагает более широкие возможности.
Вы контролируете услуги хостинга сайта
Многие платформы, предлагающие услуги по созданию веб-сайтов, включают в свои планы варианты хостинга.Это обычное явление, потому что если вы собираетесь создать веб-сайт, вам понадобится хостинг-сервер для размещения вашего сайта. Проблема возникает, когда вы хотите перенести свой сайт на другой сервер. Это может быть связано с тем, что веб-сайт вырос, а текущий сервер не имеет необходимых возможностей для его обслуживания, или вы, возможно, нашли лучшее предложение хостинга. Какой бы ни была причина перемещения вашего сайта, подавляющее большинство платформ для создания веб-страниц затрудняют процесс переноса, поскольку исходный код сайта преобразуется в метаданные в то время, когда он является частью этой платформы.
Свобода добавления функций на ваш сайт
Когда вы начинаете писать свой собственный код, вы можете создать совершенно новый и отличный дизайн. Одним из недостатков использования платформы для создания веб-сайтов является то, что шаблоны делают сайты похожими на другие. Чтобы иметь возможность настраивать сайты на основе шаблонов, также необходимо уделять этой задаче много времени. Кроме того, вы должны иметь четкое представление о том, как будет структурирован веб-сайт, а также о цветах и источниках, которые будут использоваться.То есть должна быть схема сайта, основанная на всех возможностях и функциях, предлагаемых выбранной вами платформой. Несмотря ни на что, нет никаких сомнений в том, что у вас будет больше свободы в дизайне сайта, если вы напишете код с нуля. Вам следует связаться с ведущими компаниями по веб-разработке для ваших проектов веб-разработки.
Вы не будете тратить время на упорядочивание и структурирование кода
Вы должны тратить время на упорядочивание и улучшение кода всякий раз, когда вы используете автоматически сгенерированный код.Во многих случаях вы, вероятно, не понимаете каждую строку кода, сгенерированного платформой, что может быть проблемой. Расшифровка значения каждой части кода может занять больше времени, чем создание сайта с нуля. Другая аналогичная ситуация может возникнуть, если сгенерированный код представляет ошибки таким образом, что вам придется начать выполнять тесты, чтобы определить, какая часть кода вызывает проблему.
Платформы для создания веб-сайтов добавляют на ваш сайт больше строк кода. Многие из этих строк представляют собой метаданные, содержащие различные инструкции, часто для добавления рекламы на сайты, созданные с бесплатными тарифными планами.Эти URL-адреса не только добавляют дополнительные строки в код, но также указывают на зависимость от внешних компонентов, которые могут повлиять на скорость вашего сайта и даже вызвать другие типы технических проблем.
Ваш код менее подвержен атакам хакеров
Если ваш код не упорядочен и не структурирован должным образом, могут возникнуть определенные проблемы с безопасностью, когда сайт находится в сети. Безопасность вашего сайта зависит от того, примете ли вы все необходимые меры, чтобы избежать проблем с безопасностью.С другой стороны, платформы для создания веб-сайтов используют один и тот же код для всех своих сайтов, поэтому они являются целью для хакеров, поскольку могут атаковать несколько сайтов одновременно.
Это помогает вам расти как разработчику
Хотя процесс создания веб-сайта можно разделить на этапы, это не означает, что все этапы одинаковы для разных проектов. У вас могут быть похожие проекты, но есть возможность изучить или применить новую технологию или язык.Возможно, у вас даже нет опыта владения этим языком, и вам придется изучать его для конкретного проекта. Это способ расти как разработчик.
Вы узнаете что-то новое в каждом проекте, чтобы лучше структурировать свой код, реализовать сценарии и т. Д. Все эти задачи позволят вам получить опыт в качестве разработчика.
В заключение
Использование платформ для создания веб-сайтов может быть привлекательным решением, поскольку это экономит ваше время. Если крайний срок веб-проекта близок и это простая страница, вы можете выбрать любую из этих платформ в качестве опции.Однако вы можете по возможности избегать их использования, поскольку есть несколько преимуществ, которые вы можете получить от создания собственного кода с нуля. Вам следует связаться с ведущими компаниями по веб-разработке для ваших проектов веб-разработки.
Биография автора:
Мелисса Крукс — писатель контента, пишет для Hyperlink InfoSystem, компании по разработке мобильных приложений в Нью-Йорке, США и Индии, в которой работает лучшая команда опытных и опытных разработчиков приложений. Она разносторонний технический писатель и любит изучать последние технологические тенденции, вести колонку для предпринимателей и стартапов.Она также пишет для ведущих компаний по разработке приложений.
Как создать привлекательный веб-сайт с нуля
Хорошо, давайте создадим сайт.
Ни кодирования, ни жаргона. Просто простой совет по созданию привлекательного веб-сайта с нуля без особых навыков программирования.
Создание собственного веб-сайта может показаться сложной задачей, но это проще, чем вы думаете. Вам, конечно, не нужно тратить тысячи на разработчика или дизайнера.
Конечно, есть много разных способов решить эту задачу, но пока мы просто рассмотрим один из них, чтобы подробно изучить все инструкции.Если вы будете следовать простому пошаговому процессу, вы сможете приступить к работе менее чем за час.
Прежде чем мы начнем, нам нужно понять несколько терминов. Мы будем их часто использовать.
- Веб-хост — Думайте о создании своего веб-сайта, как о строительстве дома. Прежде чем строить, нужно купить участок земли. Веб-хостинг — это участок земли, на котором вы будете создавать веб-сайт.
- Доменное имя — Это адрес вашего сайта: www.Ваш-website.com .
- WordPress — WordPress — это конструктор веб-сайтов, на котором мы сосредоточимся в этом руководстве. Это программное обеспечение, которое позволяет вам выбирать дизайн и поддерживать ваш сайт в актуальном состоянии. Есть и другие варианты, такие как Wix или Tumblr, если вам просто нужен очень простой блог, но WordPress широко используется и надежен, с множеством вариантов настройки.
Шаг 1. Настройте свой веб-хостинг
Существуют сотни веб-хостов на выбор, но некоторые из них лучше других.Помните, что это основа вашего сайта. Вы ищете что-то сильное и надежное.
Хороший веб-хостинг также необходим для скорости . Никому не нужен медленный веб-сайт, а скорость начинается с вашего хоста.
Если вы только начинаете, у вас есть два реальных варианта. Во-первых, вы можете взять то, что WordPress даст вам бесплатно, но это ограничит вас несколькими способами: адрес вашего веб-сайта будет на youraddress.wordpress.com (если вы не заплатите за обновление), и у вас не будет доступа к некоторым из них. другие расширенные функции.Если вы не против, создайте учетную запись на WordPress.com и переходите к шагу 4.
В противном случае вам понадобится что-то доступное и мощное для вашего веб-хостинга. Я использую Inmotion Hosting, поэтому я буду использовать его, чтобы продемонстрировать следующие несколько шагов.
Все веб-хосты имеют разные планы, но вы можете смело выбирать самый дешевый пакет начального уровня.
Шаг 2. Выберите доменное имя
А теперь самое интересное — выбор адреса для вашего сайта.
www.your-new-website.com
Почти все веб-хосты поставляются с бесплатным доменом (хотя вам, возможно, придется доплатить за популярный).
После того, как вы войдете в свою учетную запись веб-хостинга, нажмите доменов , а затем зарегистрируйте новые домены .
Будет аналогичная настройка независимо от того, какой веб-хостинг вы используете.
Здесь вы можете найти выбранное вами доменное имя и посмотреть, доступно ли оно.Если да, то все твое!
Поздравляю, теперь у вас есть земельный участок и адрес. Далее, создание веб-сайта.
Шаг 3: Установите WordPress
Теперь мы собираемся установить наш конструктор сайтов, WordPress.
WordPress — это программное обеспечение, которое вы будете использовать для разработки своего сайта, загрузки контента и обеспечения бесперебойной работы всего.
У всех веб-хостингов есть простой способ установить WordPress. В нашем случае вы нажимаете и устанавливаете популярное программное обеспечение , которое вы найдете на главной панели управления.
А потом установить WordPress …
Вам будет предложено создать логин и пароль WordPress, и все готово!
Теперь у вас есть веб-хостинг, доменное имя и WordPress, установленные на вашем сайте. Следующий шаг, чтобы он выглядел привлекательно.
С новыми учетными данными войдите в WordPress и давайте проявим творческий подход.
Шаг 4. Выберите «тему»
«Тема» WordPress — это базовый шаблон или дизайн для вашего сайта.Существуют сотни бесплатных вариантов, чтобы начать работу, поэтому вы можете попробовать их и найти для своего сайта наиболее подходящий вариант.
Начните с перехода к Внешний вид > Темы > Добавьте новую тему .
Здесь вы можете просмотреть множество бесплатных шаблонов или выбрать отображение последних и популярных тем.
Попробуйте также использовать кнопку «фильтр функций».Здесь вы можете выбрать отображение тем в различных категориях, таких как «блог», «электронная коммерция», «портфолио» или «новости». Эти варианты отлично подходят, если у вас уже есть определенный тип веб-сайта.
С каждой из этих бесплатных тем вы можете сразу активировать их на своем веб-сайте, чтобы вы могли протестировать их и посмотреть, как они выглядят.
Необязательный шаг 4.5: попробуйте платную премиум-тему
Если вы ищете что-то более уникальное или тему с большим количеством функций, вы можете приобрести премиальную тему.Они варьируются от 20 до 60 долларов, и вы можете купить их через WordPress или на торговых площадках, таких как Theme Forest.
Шаг 5. Настройте свой новый сайт
После того, как вы выбрали и установили базовую тему, вы можете настроить ее по своему вкусу. Здесь вы можете проявить творческий подход.
Вернувшись на страницу тем , нажмите настроить .
Здесь вы можете добавлять изображения, изменять цветовую схему и добавлять заголовки. Здесь вы превращаете базовый шаблон скелета в веб-сайт с вашим собственным стилем.
Нажмите маленькие кнопки карандаша для редактирования, и вы можете настроить заголовок, подзаголовок и строку меню.
Вы также можете изменить изображение заголовка на что-то более личное и уникальное. Возможно, у вас уже есть логотип для своего бизнеса или веб-сайта.
Шаг 6. Всегда используйте профессиональные высококачественные изображения
Если вам нужен привлекательный веб-сайт, изображения, которые вы выбираете, имеют решающее значение. Часто это первое, что видит ваш посетитель, и это должно произвести впечатление.Всегда используйте высококачественные изображения и обязательно загружайте достаточно высокое разрешение, чтобы оно оставалось четким.
Шаг 7: добавление новых страниц
Ваша домашняя страница выглядит привлекательно, самое время добавить еще несколько страниц. Вероятно, вам понадобится «страница о компании», «страница контактов» и другие элементы для вашего сайта.
Щелкните «страницы», а затем «добавить новую», чтобы создать свою первую страницу. Вот как это выглядит, когда вы создаете страницу с контактами.
Нажмите кнопку «Редактировать», и вы можете начать добавлять изображения и текст на свою новую страницу контактов.Как видите, я загрузил изображение офиса и изменил текст. Никакого кодирования, все перетаскивание.
Нажмите кнопку «Опубликовать», и он появится на вашем новом веб-сайте.
Шаг 8. Добавьте сообщения в блог на свой веб-сайт
Последний шаг к тому, чтобы он выглядел великолепно, — это добавление контента. Изначально WordPress начинался как платформа для ведения блогов, поэтому вам будет очень легко добавлять блоги и контент на свой сайт.
Все, что вам нужно сделать, это нажать «Сообщения», а затем «добавить новые». Теперь вы можете создать сообщение в блоге, добавив текст и изображения. Простой!
Шаг 9: Продолжайте экспериментировать!
Поздравляем, теперь у вас есть запущенный веб-сайт. У вас есть тема, вы добавили новые страницы и загрузили несколько красивых изображений.
Но это только начало. Отсюда вы можете продолжать экспериментировать. Пробуйте новые темы, пока не будете довольны внешним видом вашего сайта.Загружайте новые изображения и обновляйте сайт свежим новым контентом.
Всегда есть новые обновления, которые нужно установить, и новые функции, которые можно попробовать. Следите за популярными блогами о веб-дизайне, чтобы быть в курсе последних тенденций. Большинство владельцев веб-сайтов скажут вам, что они никогда не перестают настраивать и изменять!
Попробуйте сами. Это проще, чем вы думаете, и к концу дня вы можете быть в сети. Удачи!
Этот контент создается и поддерживается третьей стороной и импортируется на эту страницу, чтобы помочь пользователям указать свои адреса электронной почты.Вы можете найти больше информации об этом и подобном контенте на сайте piano.io.
Как создать веб-сайт с нуля
Создание веб-сайта может показаться самой сложной задачей , когда вы только начинаете. Есть так много вещей, о которых нужно узнать и помнить, что любой, кто хотя бы немного не разбирается в технологиях , может запутаться и очень быстро отвернуться. Однако, как только вы узнаете , как создать веб-сайт , все становится на свои места намного быстрее.
Это руководство поможет вам в этом — узнать, как создать веб-сайт с нуля. Мы рассмотрим два различных метода решения этой проблемы — один будет более подходящим для тех, кто не очень разбирается в технологиях и просто хочет запустить свой веб-сайт как можно скорее, , а другой подойдет разработчикам и программисты больше.
Кроме того, мы возьмем по одному шагу за раз . Я не буду торопить вас с основными частями, чтобы как можно скорее добраться до « хороших вещей, ».Если вы хотите узнать, как запустить веб-сайт, вам придется сделать это с нуля — мы поговорим о хостинге , SSL, надстройках и , надстройках и т. Д.
Мы также обсудим конструкторов веб-сайтов — более простой, и более быстрый способ создания веб-сайтов . Если вас интересуют эти инструменты, вы можете попробовать Zyro — , один из самых интересных конструкторов на текущем рынке!
Готовы? Отлично, давайте перейдем к делу.
Алекс Биркетт
Старший менеджер по маркетингу в Hubspot
Есть ли у вас какие-нибудь советы для тех, кто создает веб-сайт самостоятельно?
В наши дни вы можете пройти долгий путь, не написав никакого кода. Независимо от того, используете ли вы инструмент без кода, такой как WebFlow, или строите на WordPress или HubSpot, но с готовым шаблоном веб-сайта, вы можете быстро настроить простой веб-сайт, не редактируя CSS самостоятельно. Итак, в зависимости от того, для чего вы создаете веб-сайт, я бы сказал, что лучший совет: делайте это просто.Начните с малого, используйте шаблоны, не изобретайте велосипед, просто вставайте и запускайте. Как только вы начнете жить и опубликовать контент, вы можете позаботиться о том, чтобы сделать сайт красивым и индивидуальным.
Два разных метода создания веб-сайта
Как я уже упоминал в начале статьи, мы будем говорить о двух разных способах создания веб-сайта:
- Метод создания веб-сайтов .
- Традиционный веб-хостинг и метод WordPress .
Самые популярные результаты
Ищете более подробную информацию по связанным темам? Мы собрали похожие статьи, чтобы вы сэкономили время. Взглянем!
Метод создания веб-сайтов — быстро, легко и дешево
Конструкторы веб-сайтов — это специальные программы, которые позволяют создавать сайты сверхбыстро, и вообще без каких-либо технических знаний. Большинство людей, которые хотят запустить свой сайт как можно скорее, обычно предпочитают использовать конструктор сайтов в качестве более быстрой и простой и более дешевой альтернативы .
Второй метод, о котором мы поговорим, — это создание веб-сайта с использованием веб-хостинга , и WordPress. В то время как WordPress.com является самостоятельным конструктором веб-сайтов, WordPress.org — нет — на самом деле это система управления контентом ( CMS ). Короче говоря, CMS — это специальное место, где вы можете хранить , изменять и заменять контент по своему усмотрению.
WordPress.org работает аналогично конструкторам веб-сайтов (, поэтому его часто относят к категории ), но у вас должно быть гораздо больше времени и технических знаний, чтобы все работало на самом деле.Однако, естественно, у использования WordPress есть преимущества по сравнению с большинством традиционных конструкторов веб-сайтов — настройка , плагины, свобода творчества, и так далее.
Оба метода оптимальны сами по себе, и каждый из них подойдет разным людям. Однако единственный метод «, как создать веб-сайт », который будет исключен из этого руководства, — это наем программиста или дизайнера, который сделает это за вас . Это не только превосходит цель всей этой статьи, но еще и будет стоить вам целого состояния , чтобы заплатить этому человеку за ваш сайт.
Теперь, после этого краткого введения, давайте поговорим о том, как создать веб-сайт с нуля. Следуйте за каждым шагом, и к концу у вас должен быть довольно приличный веб-сайт.
Шаг 1. Визуализируйте, каким должен быть ваш сайт
Для некоторых людей создать настоящий веб-сайт не так сложно, как выяснить в процессе мышления , что они хотят, чтобы этот сайт был посвящен . Вы можете подумать, что это звучит безумно — , если вы хотите создать сайт, разве вы уже не знаете, почему?
Часто да.Но не всегда все бывает так просто.
Представьте, что вы хотите создать блог . Это ваша первоначальная идея — поделиться своими мыслями о IT со всем миром. Однако по мере того, как ваш блог начинает набирать обороты, вы решаете продать несколько электронных книг . Итак, как лучше всего продвигать и продавать книги в данный момент?
Как вы уже догадались — раздел электронной коммерции в вашем блоге.
Однако для того, чтобы сделать это успешно, вам необходимо интегрировать функций электронной коммерции в ваш уже существующий блог.Поступая так по прихоти, вы можете столкнуться с множеством проблем, с которыми никто не захочет заниматься. Вот почему предвосхищает .
Есть много разных типов веб-сайтов. Назову лишь некоторые из них:
- Блоги
- сайтов электронной коммерции
- Поставщики услуг
- Новостные агентства
- Консультации по вопросам здравоохранения
- Индивидуальные страницы брендов
- Пункты обмена видео
- И многое другое…
Теперь никто не ожидает, что вы сможете увидеть будущее.Однако, прежде чем приступить к собственному изучению того, как создать веб-сайт, вам следует потратить немного времени на составление хотя бы самого базового плана.
Последний найденный купон Squarespace:
Выбор проверенного персонала
СОХРАНИТЬ 10%
Squarespace Ограниченная сделка
Получите этот код предложения Squarespace и получите прекрасную скидку 10% на любой выбранный план подписки Squarespace. Создайте сайт своей мечты СЕЙЧАС !!
Срок годности: 05/10/2021
4512 Пользователей
Осталось всего 88
×
СОХРАНИТЬ 10%
Squarespace Limited-Time Deal
Возьмите этот код предложения Squarespace и получите прекрасную скидку 10% на любом выбранном плане подписки Squarespace.Создайте сайт своей мечты СЕЙЧАС !!
Идите и делайте покупки со скидкой!
REDEEM DEAL
Дата истечения срока: 10.05.2021
4512 Используется человек
Только 88 Левый
Шаг 2: Выбор подходящего конструктора веб-сайтов
Когда у вас есть вся идея, переходите к трудной части — , выбирая правильный конструктор веб-сайтов , инструмент, призванный помочь вам создать веб-сайт как можно быстрее и проще.
На рынке существует множество разработчиков, которые рекламируют, как сделать веб-сайт быстрым и простым, с помощью своих современных пользовательских интерфейсов . С некоторыми это действительно так, но с большинством вы просто закончите тем, что потеряет ваши деньги и время , пытаясь разобраться даже в самых элементарных вещах.
Лучшим примером конструктора веб-сайтов, который избегает всего этого bull и позволяет сразу перейти к делу, является Wix .Это компания, о которой, вероятно, уже слышала даже ваша собака, и это просто показывает , насколько хорошо они внедрили свой конструктор веб-сайтов .
В качестве альтернативы вы также можете использовать ранее упомянутый Zyro — это современный конструктор веб-сайтов с одними из самых уникальных функций в игре ( т.е. тепловые карты, средства записи AI и т. Д. ).
Возвращаясь к Wix, маркетинга недостаточно, чтобы сделать клиента счастливым, хотя .Также вам нужен хороший товар . Wix действительно прост в использовании, имеет несколько уникальных и оригинальных функций и позволяет быстро научиться создавать веб-сайты. По всем этим причинам и поскольку это один из лучших разработчиков веб-сайтов, мы будем использовать Wix в качестве примера в этом руководстве.
Шаг 3: Регистрация
После того, как вы решили, какой конструктор веб-сайтов использовать, все, что вам нужно сделать, прежде чем вы сможете узнать, как запустить веб-сайт, — это зарегистрироваться и создать учетную запись .
Зарегистрироваться в Wix очень просто. Все, что вам нужно сделать, это перейти на их домашнюю страницу, нажать большую кнопку « Get Started » и ввести свой адрес электронной почты и желаемый пароль. После этого ответьте на несколько вопросов, и готово!
В какой-то момент вам будут представлены два варианта . Вы можете позволить Wix ADI ( Artificial Design Intelligence ) создать начальный макет вашего веб-сайта за вас, или вы можете сделать все это самостоятельно с нуля.
Если вы выберете ADI, вам нужно будет ответить еще на несколько вопросов, выбрать несколько тем и все! Вы попадете прямо в законченный черновик вашего нового веб-сайта, и оттуда легко пройдут . То же самое применимо, если вы решите заполнить все самостоятельно — просто займет немного больше времени.
Шаг 4: Настройка вашего сайта
Теперь, предполагая, что вы пошли дальше по маршруту « нестандартное создание » и решили игнорировать Wix ADI, первое, что вам нужно сделать, это выбрать подходящий шаблон .Многие люди, которые думают о том, как запустить веб-сайт, похоже, забывают, насколько важна эта часть на самом деле!
шаблоны
Выбор правильного шаблона веб-сайта может означать разницу между вашим веб-сайтом и его успехом, а — полным провалом. Тема также должна представлять сообщение вашего сайта — например, блог должен иметь гостеприимный и уютный вид, в то время как веб-сайты электронной коммерции обычно имеют этот безупречный, стерильный вид.
Wix предлагает вам абсолютно огромный выбор шаблонов тем для сортировки и выбора.Естественно, если вы пытаетесь создать блог, вам не обязательно выбирать одну из тем блога — это всего лишь рекомендуемый способ сделать это.
Темы шаблонов Wix включают:
- Бизнес
- Интернет-магазин
- Фотография
- Видео
- Музыка
- Типовой проект
- Рестораны и еда
- Путешествия и туризм
- События
- Портфолио и резюме
- Здоровье и благополучие
- Мода и красота
- Сообщество и образование
- Искусство
- посадочных страниц
У каждого из них есть свои собственные подразделы , и есть нескольких страниц тем для изучения в любом из этих подразделов.Излишне говорить, что любой, кто хочет создать веб-сайт, получит шаблонов более широкий, чем когда-либо понадобится.
Опции для строителя
После того, как вы выберете тему, вы будете отправлены на сам конструктор. Хотя сначала это может показаться запутанным, но с функциональной точки зрения я вижу, что люди в Wix потратили много времени, чтобы убедиться, что конструктор веб-сайтов интуитивно понятен и прост в навигации .
Вверху страницы вы увидите главное меню . Вы используете его, чтобы перейти на ваш сайт , переключаться между рабочим столом и мобильным представлением , получить доступ к своим инструментам , настройки и режим разработки , предварительный просмотр и опубликовать любые изменения , которые вы внесли в сайт.
Слева у вас будет отдельное меню для добавления новых страниц, , приложений , мультимедиа, , , изменения фона, и т. Д.
Наконец, в правой части конструктора вы найдете меню, которое больше всего сбивает с толку большинство людей, которые учатся создавать веб-сайты.Однако это только до тех пор, пока они на самом деле не попробуют его использовать — на самом деле довольно просто и понятно!
Это меню позволяет копировать и размещать , упорядочивать и выравнивать различных элементов, устанавливать определенные позиции, , углы , и так далее. Доступные варианты будут зависеть от того, что именно вы редактируете на самом сайте.
Какой бы элемент на вашем веб-сайте Wix вы ни хотели изменить, удалить или отредактировать другим способом, вы можете сделать это, нажав на него в предварительном просмотре вашего сайта .Это очень удобно, и определенно удобно, когда вы учитесь создавать веб-сайт.
Выбор функций
Теперь перед вами грубый фасад вашего веб-сайта. Естественно, следующее лучшее, что нужно сделать, — это добавить множество различных функций , виджетов и приложений , которые могут вам понадобиться при управлении сайтом.
Узнав, как создать веб-сайт, вы обнаружите, что есть несколько способов сделать это с помощью Wix. Прежде всего, обратите внимание на меню левой панели .Вы заметите, что можно установить разные фоны страниц меню и , , но самый большой выбор параметров откроется, когда вы нажмете на символ « + ».
Здесь вы можете выбрать все, что хотите добавить на текущую страницу. Текст, изображения, кнопки, списки, социальные ссылки, меню, магазин… Возможности безграничны!
В зависимости от типа создаваемого вами веб-сайта встроенные сайты и PayPal кнопки оформления заказа могут вам понравиться, а могут и не понравиться.Однако, если вы последуете нашему ранее обсужденному примеру и захотите узнать, как создать веб-сайт с интегрированными функциями электронной коммерции, Wix вас поддержит.
К счастью, по умолчанию Wix оснащен всеми основными функциями электронной коммерции . Нельзя сказать, что у других высокопоставленных разработчиков веб-сайтов таких функций нет — они есть у ! Однако в Wix есть эта удивительная функция, позволяющая перетаскивать элементов в любое место на вашем сайте. Где угодно! Будь то кнопки PayPal, ссылки корзины покупок или ценники!
Это действительно упрощает и упрощает процесс определения того, как сделать веб-сайт более плавным.
Еще один способ добавить различные функции на ваш сайт Wix — через приложения . Еще раз, если вы направитесь в левое меню в конструкторе сайтов Wix, вы найдете там раздел приложения .
Приложения разделены на различных категорий для вашего удобства. У вас есть приложения для блогов, — необходимые для , чтобы ваш веб-сайт работал и работал , некоторые — для электронной коммерции, и так далее. Некоторые приложения можно купить , другие — совершенно бесплатно .
То, как все представлено в конструкторе, упрощает процесс обучения . Как и другие отличные конструкторы веб-сайтов, Wix стремится к тому, чтобы не было путаницы, в вашем процессе проектирования, и чтобы все можно было сделать быстро и с легкостью .
Шаг 5. Планируйте на будущее
На данный момент у вас уже должен быть довольно приличный сайт . У вас должна быть возможность размещать и изменять изображения , писать привлекательные заголовки, и работать с контактными формами , вариантами подписки и другими важными функциями.
Следующим шагом на вашем веб-сайте должен быть контент .
Добавить содержимое
Добавление контента — определенно самая важная часть вашего веб-сайта . В зависимости от вашего конструктора и контента, который вы хотите добавить, это могут быть разные способы. Однако в большинстве случаев, если это текст , вам просто нужно набрать на странице, и это будет .
После того, как у вас появится контент на вашем сайте, вы должны оптимизировать его, добавив изображений, , возможно, даже встроить видео , чтобы усилить некоторые моменты, которые вы делаете в тексте.Честно говоря, мир для вас на тот момент — вы уже научились создавать веб-сайт с нуля, и теперь все, что осталось сделать, это поддерживать его .
Кто-то возразит, что это на самом деле труднее. Следовать инструкциям по созданию веб-сайта несложно, но как только вы закончите и будете готовы к его дальнейшей оптимизации, все станет немного сложнее.
Однако так быть не должно — — это все тот же процесс обучения созданию веб-сайта, только немного больше информации, которую нужно усвоить.
SSL
Одна из самых первых вещей, которую вы должны убедиться, что ваш веб-сайт имеет сертификат SSL (HTTPS). По сути, это , это маленькое изображение замка рядом с URL-адресом вашего веб-сайта , которое отмечает, что посетители, их соединение является безопасным — если у вас его нет, вместо блокировки вы увидите слова « Not Secure ».
Если вы выбрали Wix в качестве предпочтительного конструктора веб-сайтов, то вам, вероятно, не нужно беспокоиться об этом .У компании есть встроенный сертификат SSL для всех своих сайтов — если вы его не видите, скорее всего, вам нужно только активировать HTTPS на вкладке настроек.
Поисковая оптимизация
Весь размещаемый вами контент должен быть оптимизирован для поисковых систем . Это называется SEO — Поисковая оптимизация . С помощью SEO ваш контент становится более заметным для потенциальных клиентов .Вы делаете это с помощью определенных ключевых слов и настроек метатега . Есть также немало функций, которые могут понадобиться конструктору веб-сайтов, чтобы помочь вам в этом.
SEO — это отдельная тема, когда речь идет о « как создать веб-сайт » или « как создать веб-сайт ». Он обширный и сложный, поэтому вам действительно стоит потратить время на изучение темы, если вы хотите, чтобы ваша страница успешно занимала первые места в результатах поиска Google, и для этого у Wix есть несколько специальных советов, которые помогут вам начать работу.
Безопасность
Хотя сертификация SSL — хорошее начало, вам нужно будет провести некоторое исследование, чтобы узнать, как еще больше повысить безопасность вашего веб-сайта. Недостаточно знать , как сделать веб-сайт — ваш сайт может быть атакован DDoS атаками или спамерами в любой момент времени.
Как и Wix, у большинства конструкторов веб-сайтов есть приложения, которые решают такие задачи. Даже если вы только начали учиться создавать веб-сайт и никогда особо не углублялись в тему безопасности сайта, эти приложения должны быть действительно простыми в установке и настройке.
Скорость / Время работы / TTFB
Время безотказной работы вашего веб-сайта показывает, как долго сайт может быть доступен в течение выбранного периода времени. Это будет зависеть от выбранного вами конструктора веб-сайтов. Обычно это зависит от вашего провайдера веб-хостинга , , но поскольку большинство разработчиков веб-сайтов имеют интегрированный хостинг, это не то, над чем вы будете иметь большие полномочия, если только вы не решите выбрать другого разработчика.
TTFB означает Time Till First Byte и показывает, сколько времени требуется вашему веб-сайту, чтобы загрузить самый первый байт после того, как был сделан запрос .Это отличается от , скорость сайта — это время, необходимое для загрузки всего содержания на вашей странице после запроса самой страницы .
Что касается скорости сайта и TTFB, это немного другая история. Да, часть этого все еще лежит на плечах разработчика, но во многом это зависит от , насколько хорошо вы оптимизировали свой веб-сайт . Оптимизация здесь может означать все, от свежести контента до уменьшения размера изображения, встраивания видео и т. Д.
Метод № 2
Итак, это один из способов научиться создавать веб-сайт. Как я упоминал ранее, конструкторы веб-сайтов являются предпочтительной альтернативой , поскольку они позволяют вам запустить и запустить сайт днем, без каких-либо знаний в области программирования.
Однако есть и другая альтернатива.
Если у вас есть больше времени, и вы хотели бы иметь больше возможностей для творчества, тогда вы можете выбрать CMS — Системы управления контентом.
Без сомнения, самая популярная CMS — это WordPress — это платформа, на которой построен невероятно большой кусок Интернета. Однако здесь есть некоторые вещи, которые будут отличаться, ну… Более сложный . Но не будем забегать вперед.
Шаг 1. Найдите провайдера веб-хостинга
WordPress сам по себе полностью бесплатен для использования — вы можете скачать его в любой момент и начать создавать свой веб-сайт.Однако, поскольку я понимаю, что вы хотите не только научиться создавать веб-сайт, но также иметь что-то, что можно показать на живых серверах в самом конце, вам нужно будет найти подходящий веб-хостинг . .
Хотя на первый взгляд это может показаться сложным, концепция веб-хостинга на самом деле довольно проста, и любой, кто хочет создать веб-сайт с нуля, сравнительно быстро с ней знакомится. Когда ваш веб-сайт размещен на хосте, это означает, что он «арендует» места в сети и, таким образом, доступен в Интернете.
Некоторые хостинг-провайдеры просто великолепны, другие просто наживают денег. Это действительно тема, которая требует отдельного руководства, но, чтобы не уходить от основной темы этой статьи, я выбрал Hostinger в качестве своего хостинг-провайдера, и я буду использовать их в качестве основной пример далее в руководстве.
Почему Hostinger? Ну, в основном потому, что они предлагают самый дешевый хостинг в мире , но при этом обеспечивают около потрясающих результатов безотказной работы с отличным послужным списком .Я действительно не знаю, как они это делают, но я уже использовал их на нескольких своих сайтах раньше и не был разочарован.
Шаг 2. Регистрация на веб-хостинг
После того, как вы выбрали своего хостинг-провайдера, следующим шагом будет выбор и покупка плана . С Hostinger у вас будет несколько вариантов выбора, но вам следует обратить внимание на общий веб-хостинг для вашего первого сайта.
Вы быстро заметите, что у вас есть несколько планов, из которых можно выбрать. Я бы порекомендовал вам воспользоваться версией плана Premium , если вы уже непреклонны в создании своего веб-сайта и его расширении, и планом Single , если вы просто хотите немного поиграться.
С Hostinger, как только вы приобретете тарифный план, вы также получите годовой бесплатной регистрации веб-домена . Затем вы можете выбрать доменное имя и получить его на год , совершенно бесплатно (для вам, вероятно, придется покупать SSL отдельно, хотя ).
После того, как вы закончите с выбором тарифного плана и регистрацией доменного имени, здесь начинается самое интересное из «, как создать веб-сайт ». Вы попадете в CPanel — область, где вы можете управлять своим веб-сайтом и его настройками хостинга.
Теперь вам нужно установить WordPress . Если вы выбрали Hostinger, вам будет автоматически предложена эта опция, и процесс установки будет очень быстрым и простым .
Шаг 3. Базовая настройка WordPress
После того, как WordPress установлен и готов к работе, вы перейдете на панель управления. Поначалу это может показаться действительно запутанным, но не волнуйтесь — , как только вы к нему привыкнете, все это обретет смысл очень быстро.
В левой части страницы находится главное меню . Здесь вы можете найти все и вся, что поможет вам лучше понять, как создать веб-сайт с помощью WordPress — страниц, сообщений, настроек меню, комментариев, и так далее.
Первое, что вам нужно сделать, это перейти на страницу настройки и, , выбрать тему для своего веб-сайта. . С WordPress вы можете изменить свою тему в любой момент, поэтому не бойтесь экспериментировать.И поверьте мне, для этого определенно есть место — WP предлагает множество шаблонов на выбор!
После того, как вы выбрали свою тему, с этого момента все довольно просто. Процесс создания вашего веб-сайта должен быть очень похож на процесс создания веб-сайта — функций, контент, безопасность сайта, и т. Д.
Единственное отличие состоит в том, что вы не увидите, как контент выглядит на вашей странице, прежде чем вы добавите его и предварительно просмотрите его. Однако, как только вы к этому привыкнете, все должно быть готово.
Шаг 4: Расширенная настройка WordPress
Давайте будем откровенны — WordPress требует времени, чтобы привыкнуть к . Научиться создавать веб-сайт с помощью этого инструмента непросто, и здесь возникает множество тонкостей. Но как только вы разберетесь с основами и разобрались, наступит самое интересное — плагины .
Вначале вы могли заметить, что в оригинальной версии WP отсутствует довольно много, казалось бы, важных функций , таких как контактные формы , страницы электронной коммерции, списки адресов электронной почты, и так далее.Это потому, что вы найдете все это в разделе плагина меню WordPress.
Плагины
станут вашим лучшим другом, если вы используете WP, и они самые известные звезды этой CMS. Вы можете буквально найти плагин практически для всего, что только можете себе представить — безопасности , SEO, дополнительных функций, и т. Д.! Кроме того, их очень легко установить, – всего за пару кликов, и плагин появится в вашем меню, готовый к использованию.
Вы не сможете установить реальных продуктов или SSL-сертификат, , поскольку это не плагины.Кроме того, некоторые из высокопроизводительных инструментов будут монетизированы — , что стоит иметь в виду.
Если вы немного технически подкованы, и имеете некоторые навыки программирования, то WordPress в целом становится морем возможностей. Нет ничего, что вы не смогли бы сделать с помощью этого инструмента для создания веб-сайтов. Вы можете создать свои собственные плагины , запрограммировать различные функции, управлять своим контентом по-разному, и так далее.
Кроме того, что касается расширенных функций WordPress, вы, вероятно, будете рады узнать, что если вы научитесь создавать веб-сайт с нуля с помощью WP, вы сможете масштабировать его с до бесконечности . Это опять же ложится на плечи плагинов и общую стабильность платформы.
Самые популярные результаты
Просмотрите нашу коллекцию наиболее полных статей, руководств и учебных пособий, связанных с Конструктором веб-сайтов. Всегда будьте в курсе и принимайте взвешенные решения!
Выводы
К этому моменту вы уже должны иметь полное представление о том, как создать веб-сайт, как простым, так и сложным способами.Если вы следовали инструкциям, вы должны прочитать это заключение на одной странице и иметь свой собственный свежеприготовленный, готовый к работе веб-сайт на другой.
Помните: если вы ищете быстрый и простой способ создания веб-сайта, вам следует выбрать путь конструктора веб-сайтов . Это будет на быстрее, дешевле, и не потребует от вас обширных знаний CSS , HTML или PHP — , особенно если вы используете некоторые из высокопроизводительных сборщиков, таких как Зайро .
При этом, возможно, создатели веб-сайтов на самом деле не ваше дело, и вы действительно хотите бросить вызов? Если это так, то путь « WordPress-хостинг веб-сайтов » может вас заинтересовать гораздо больше.
Чтобы раз и навсегда прояснить разницу, позвольте мне выразиться так:
Используйте конструктор веб-сайтов , если вы:
- Хотите создать сайт днем.
- У меня нет программирования или других технических знаний, связанных с созданием веб-сайтов.
- Не хочу тратить много денег.
- Хотите простой веб-сайт или интернет-магазин.
- Не хочу заниматься управлением веб-сайтом на сервере.
Используйте WordPress , если вы:
- Хотите больше места для творчества.
- Хотите нести ответственность за все, что происходит с вашим сайтом.
- Хочу испытать.
- Побольше свободного времени.
- Иметь технические знания и разбираться в языках программирования (, в частности, HTML, CSS и PHP) .
- Планируете масштабировать и превращать ваш сайт во что-то большее.
В связи с этим, я очень надеюсь, что это руководство помогло вам лучше понять различия между двумя методами создания веб-сайта. Помните — Рим не был построен за день , поэтому не волнуйтесь, если все сразу не пойдет по вашему плану! Удачи!
Алекс Биркетт
Старший менеджер по маркетингу в Hubspot
Автор: Алекс Биркетт, старшийМенеджер по маркетингу роста в Hubspot
Алекс Биркетт — старший менеджер по маркетингу в Hubspot и соучредитель Omniscient Digital, агентства премиального контент-маркетинга. Он всю свою карьеру был одержим умением принимать решения и …
Читать полную биографию …
Оставьте честный отзыв
Оставьте свое искреннее мнение и помогите тысячам людей выбрать лучший конструктор сайтов. Все отзывы, как положительные, так и отрицательные, принимаются, если они честны.Мы не публикуем предвзятые отзывы или спам. Так что если вы хотите поделиться своим опытом, мнением или дать совет — сцена ваша!
Как создать веб-сайт с нуля (2021)
Итак, вы хотите создать веб-сайт с нуля? Что ж, это довольно амбициозная цель — к счастью, она не так сложна, как вы думаете! Благодаря всем существующим технологиям, позволяющим максимально упростить создание веб-сайтов, это то, чему может научиться каждый!
Вот основные шаги по созданию веб-сайта с нуля (для начинающих):
- Зарегистрируйте доменное имя
- Получите веб-хостинг
- Укажите свое доменное имя в новой учетной записи хостинга
- Выберите формат для своего сайта (WordPress, HTML и т. Д.)
- Создайте свой контент
- Сообщите людям, что ваш сайт работает!
На этой странице мы проведем вас через каждый шаг, по одному. Но сначала небольшое примечание: если вы решите купить хостинг или какие-либо услуги по нашим рекомендованным ссылкам за эту плату, возможно, мы получим компенсацию. Но не волнуйтесь, это не повлияет на нашу приверженность созданию отличного непредвзятого контента!
С учетом сказанного, давайте перейдем к этому руководству по созданию веб-сайтов для начинающих!
Шаг 1. Зарегистрируйте доменное имя
Веб-сайт не может существовать в Интернете без общедоступного имени, которое люди могут использовать для его поиска, и в данном случае это доменное имя.
Чтобы зарегистрировать доменное имя, вам нужно сначала подумать об идее. У нас есть целая страница, посвященная тому, как придумать название блога, так что вы можете проверить это, чтобы придумать наилучшее возможное доменное имя. Но подытоживая, вот как зарегистрировать доменное имя:
1) Выберите имя
Как упоминалось выше, вам понадобится уникальное, запоминающееся и интересное доменное имя. Один или два сеанса мозгового штурма — отличный способ придумать идеи.После этого есть несколько вещей, в которых вы хотите убедиться:
- Ваше доменное имя не должно содержать никаких комбинаций букв, которые пишут странные слова, непреднамеренные ругательства и т. Д.
- Ваше доменное имя должно быть запоминающимся, и как можно короче
- Он не должен содержать дефисов, если их невозможно избежать.
- Домены .COM, как правило, лучший выбор, если вы не являетесь некоммерческой организацией (.ORG) или вам действительно нужно конкретное имя и .COM принято
2) Проверить, доступно ли ваше имя
Это важный шаг в регистрации доменного имени.То, что вы подумали о замечательном имени, не означает, что оно доступно — на самом деле, кто-то еще мог подумать о нем раньше, чем вы, и уже зарегистрировал его. Итак, вам нужно проверить, доступно ли оно.
Лучший способ сделать это — посетить регистратора доменных имен, ввести свое имя и посмотреть, доступно ли оно. И для этого — мы рекомендуем Namecheap. Это потрясающий и серьезный регистратор, и мы сами постоянно их используем.
3) Зарегистрируйте имя
Да, вот и все — если имя вам подходит и доступно, заблокируйте его! Пара советов по регистрации доменных имен:
- Хорошее практическое правило — регистрировать домен не менее двух лет при первоначальной регистрации
- Обычно рекомендуется добавлять конфиденциальность (чтобы спамеры не могли просматривать вашу информацию)
После того, как вы заблокировали и зарегистрировали свое имя, вы можете переходить к следующему шагу в создании собственного веб-сайта с нуля! Если вы ищете регистратора для блокировки доменного имени, мы определенно рекомендуем NameCheap!
Посетите NameCheap
Шаг 2. Получите веб-хостинг
У вас есть доменное имя, и вы готовы запустить свой веб-сайт — что же дальше? Что ж, пора обзавестись веб-хостингом!
Если вы еще не знаете, веб-хостинг — это термин, который по сути означает аренду места на чужом веб-сервере.На этом сервере вы храните все файлы, с которых работает ваш сайт. Когда кто-то посещает ваш веб-сайт, его браузер запрашивает эти файлы с веб-сервера, и именно так они просматривают ваш сайт.
Без сомнения, наша любимая хостинговая компания Bluehost . У них есть поддержка по телефону 24/7/365 в США (что бывает крайне редко), а также множество других замечательных функций. А с нашим эксклюзивным купоном Bluehost вы можете получить этот хостинг за 2,95 доллара в месяц, что невероятно дешево.Главное, что нам нравится в Bluehost, — это то, что они не жертвуют качеством, даже если у них отличная цена.
Посетите Bluehost
Несколько советов о веб-хостинге в целом
Ниже приведены несколько важных советов о веб-хостинге, о которых большинство людей не думает…
Совет № 1: Общий хостинг, вероятно, Enough Power
Существуют разные типы веб-хостинга, но наиболее распространенной формой является виртуальный хостинг.Здесь вы «делитесь» сервером с другими людьми, и это намного дешевле, чем иметь собственный веб-сервер. Это делит стоимость между несколькими людьми, чтобы сделать ее более доступной.
Для большинства людей с обычным блогом или веб-сайтом виртуальный хостинг — это все, что вам нужно. Если вы просматриваете более 1000 посетителей в день, вы можете подумать о чем-то более мощном, но ниже этого большинству людей подойдет хороший общий хостинг.
Совет № 2: Обязательно выбирайте хост с хорошей поддержкой
Независимо от того, считаете ли вы, что он вам понадобится, вы обязательно это сделаете! Несмотря ни на что, в конечном итоге возникнет какая-то проблема, которая приведет к остановке вашего сайта, и вам придется ее исправить, часто в неурочные часы или когда это крайне неудобно.
Это когда большая поддержка стоит на вес золота. Когда вы ищете хостинг, вы можете немного сэкономить на характеристиках сервера, скидках и т. Д., Но никогда не экономьте на поддержке, особенно если вы новичок в создании веб-сайтов. Хорошая служба поддержки может быстро вывести вас из затруднительного положения!
Совет № 3: Оплата за несколько лет может сэкономить деньги
Как и многие другие продукты и услуги, вы обычно можете сэкономить на хостинге, покупая более одного года за раз или, по крайней мере, оплачивая вместо этого полный год оплаты ежемесячно.Если вы думаете, что серьезно относитесь к созданию своего веб-сайта, возможно, стоит купить более одного года — год проходит довольно быстро, и в большинстве случаев вы не можете снова получить первоначальную скидку, предлагаемую хостинговыми компаниями.
Опять же, если вы ищете надежный хостинг с отличной поддержкой, функциями и многим другим, мы настоятельно рекомендуем Bluehost (мы тоже их используем)!
Посетите Bluehost
Шаг 3: Укажите домен на своей учетной записи хостинга
Чтобы «связать» свой домен с учетной записью веб-хостинга, вам необходимо войти в свою учетную запись у регистратора домена и обновить ваши настройки DNS.
DNS — это сокращение от «Серверы доменных имен», и это серверы, которые отображают IP-адрес в удобочитаемое доменное имя. Например, когда вы набираете «Example.com» в своем веб-браузере и нажимаете Enter, как ваш компьютер узнает, что найти веб-сервер, подключенный к этому сайту? Просто — он извлекает информацию из DNS, которая связывает это имя с соответствующим веб-сервером.
Когда вы регистрируетесь на веб-хостинге, ваша хостинговая компания предоставит вам имена своих серверов доменных имен, и это то, что вам нужно обновить у вашего регистратора доменных имен.Каждый регистратор индивидуален, поэтому вам следует проверить справочную документацию у своего регистратора, чтобы найти конкретные примеры.
Используя в качестве примера Namecheap и Bluehost, вы просто войдете в свою учетную запись Namecheap и щелкните свой домен, чтобы отредактировать его. Затем вы поместите серверы имен Bluehost—ns1.bluehost.com и ns2.bluehost.com (всегда должно быть как минимум 2 сервера имен) в пустые поля для серверов имен и нажмите «Сохранить». Системе DNS может потребоваться до 24–48 часов, чтобы полностью внедрить ваши изменения, но в целом она часто обновляется за час или меньше.
Вы можете очистить файлы cookie, кеш и проверить, вызывает ли ввод имени домена ваш новый веб-сервер (который, вероятно, будет страницей Bluehost по умолчанию, например, если вы использовали Bluehost ). Если это так, то DNS распространяется, и вы готовы перейти к следующему шагу. Если нет, то вам нужно немного подождать и проверить еще раз, продолжая, как только изменения вступят в силу.
Шаг 4: Выбор системы управления контентом (CMS) для вашего веб-сайта
Раньше действительно был только один выбор формата веб-сайта — все было сделано полностью в файлах HTML и структуре папок.Это было просто, но также сложно для людей, мало разбирающихся в написании кода и создании веб-сайтов.
В настоящее время ситуация значительно изменилась, и WordPress является новейшим и наиболее удобным программным обеспечением для управления веб-сайтами, и, что самое главное, бесплатным! И самое замечательное в WordPress то, что он заботится о большинстве вещей, которые вам приходилось делать самостоятельно в прошлом. Вдобавок ко всему, WordPress составляет более 30% всех сайтов в Интернете, что огромно! Когда вы объединяете WordPress с одним из лучших хостинг-провайдеров WordPress, вы можете быть уверены, что у вас есть надежная платформа для создания отличного веб-сайта!
В основном ваши варианты CMS:
- WordPress
- HTML
- Пользовательское кодирование
- Drupal или другая менее известная CMS
На самом деле, самый простой и надежный вариант — это WordPress, и это полностью то, что мы рекомендуем! После того, как вы определились с CMS, вы можете установить ее через панель администратора Bluehost (или любого другого хоста, который вы используете) одним щелчком мыши.Если по какой-то причине вы не можете это понять, обратитесь за помощью.
В процессе установки вам нужно будет создать имя пользователя и пароль, которые должны быть уникальными и трудными для подбора. После установки WordPress вы сможете войти в систему со страницы example.com/wp-login.php (замените example.com своим доменным именем). Оттуда вы можете настроить свой веб-сайт и начать работу.
Есть много конфигураций, плагинов и вещей, которые вы можете изменить в WordPress, и мы расскажем, как настроить WordPress в другом посте.После того, как вы правильно установили и настроили WordPress, вы можете переходить к созданию своего контента. Фактически, вам даже не нужен готовый сайт для создания всего вашего контента. Вы можете создать карту содержимого с помощью электронной таблицы, а затем написать и сохранить весь свой контент с помощью Word или аналогичной программы обработки текста, а затем опубликовать контент, как только ваш сайт будет правильно настроен. Давайте посмотрим на создание контента…
Шаг 5: Создайте свой контент
Создание контента — одна из самых важных частей создания любого веб-сайта, и вы должны позаботиться об этом.Контент — это не просто текст и письмо, это также могут быть изображения, видео или другие вещи, которые ваши посетители увидят или с которыми будут взаимодействовать.
Лучший способ начать создание контента — это создать карту контента, чтобы вы могли спланировать все страницы, где они будут находиться, какой тип общей темы вы хотите и т. Д. Как упоминалось выше, это может это легко сделать с помощью электронной таблицы, а затем вы можете писать или создавать свой контент оттуда.
Вашему сайту не обязательно иметь миллион страниц, чтобы начать работу — у него может быть только одна, и вы можете развивать его оттуда.Но этого не должно быть:
- Неорганизованный
- Страницы, которые не загружаются должным образом
- Имеют изображения, которые не загружаются должным образом
- Выглядят наполовину отполированными или готовыми
- Имеют дублированный или некачественный контент
Вместо этого вы хотите создать сайт, который увеличивает ценность Интернета и который люди хотят вернуться и прочитать. Это означает, что ваш сайт должен быть:
- Хорошо организованным
- Иметь отличное содержание со страницами, которые представляют большую ценность для посетителей
- Всегда правильно загружать
- Не выглядеть недоделанным или небрежным
- Мобильным (это очень важен в настоящее время)
- Изображения должны иметь правильный размер
- Время загрузки должно быть быстрым, в идеале менее 3 секунд
После того, как ваш контент будет готов, опубликован, а ваш сайт отполирован, и в его окончательную версию вы можете перемещаться на последний шаг.
Шаг 6: Расскажите людям о вашем сайте!
Одна из лучших особенностей веб-сайта — это то, что теперь вы можете привлекать посетителей и наблюдать за ростом сайта по мере добавления все большего и большего количества интересного контента. Есть множество способов рассказать людям о своем веб-сайте.
Публикация вашего сайта в социальных сетях
Один из лучших способов рассказать о вашем новом веб-сайте — это поделиться им в социальных сетях. Это отличный способ продемонстрировать свой новый сайт людям, которых вы знаете, их друзьям и многим другим!
Связь с другими владельцами веб-сайтов
Иногда полезно обратиться к другим владельцам веб-сайтов и блогов в той же нише, что и вы, чтобы помочь продвинуть свой веб-сайт.Например, если у вас есть веб-сайт о приготовлении пищи без глютена, вы можете обратиться к другим блогам гурманов без глютена, чтобы продвигать свой собственный сайт.
Создание подкаста
Это требует немного больше работы, но подкаст — отличный способ продвинуть ваш сайт среди другой аудитории заинтересованных читателей. Если людям понравится ваш подкаст, они будут часто проверять его и могут стать постоянными слушателями и посетителями вашего сайта.
Платная реклама
Иногда платный старт помогает получить некоторую первоначальную поддержку с отличным веб-сайтом.Для этого есть много вариантов в Интернете, таких как AdWords. Этот вариант действительно зависит от вашего бюджета и общих целей по продвижению вашего сайта.
Написание отличного контента
Если вы напишете потрясающий контент, люди, естественно, найдут ваш веб-сайт через поисковые системы, и им он может настолько понравиться, что они поделятся им на своих сайтах. Это может помочь привлечь людей на ваш сайт и повысить его популярность.
Надеюсь, вам понравилось это руководство по созданию веб-сайта с нуля! Выйди, начни и создай веб-сайт — это невероятно весело и, как ничто другое, ты никогда не сможешь сделать! И если вы ищете хорошую хостинговую компанию, чтобы начать работу с ней, она хороша для новичков, вы не ошибетесь с Bluehost !
Посетите Bluehost
Какое программное обеспечение мне нужно для создания веб-сайта? — Изучите веб-разработку
В этой статье мы расскажем, какие программные компоненты вам понадобятся при редактировании, загрузке или просмотре веб-сайта.
Вы можете бесплатно загрузить большинство программ, необходимых для веб-разработки. В этой статье мы дадим несколько ссылок.
Вам понадобятся инструменты для:
- Создание и редактирование веб-страниц
- Загрузить файлы на ваш веб-сервер
- Перейти на ваш сайт
Почти все операционные системы по умолчанию включают текстовый редактор и браузер, которые можно использовать для просмотра веб-сайтов. В результате вам обычно нужно только приобрести программное обеспечение для передачи файлов на ваш веб-сервер.
Создание и редактирование веб-страниц
Для создания и редактирования веб-сайта вам понадобится текстовый редактор. Текстовые редакторы создают и изменяют неформатированные текстовые файлы. Другие форматы, такие как RTF , позволяют добавлять форматирование, например полужирный или подчеркнутый. Эти форматы не подходят для написания веб-страниц. Вам следует подумать о том, какой текстовый редактор вы используете, так как вы будете много работать с ним при создании веб-сайта.
Все настольные операционные системы поставляются с базовым текстовым редактором.Все эти редакторы просты, но не имеют специальных функций для кодирования веб-страниц. Если вы хотите что-то посложнее, доступно множество сторонних инструментов. Сторонние редакторы часто имеют дополнительные функции, включая раскраску синтаксиса, автозаполнение, сворачиваемые разделы и поиск кода. Вот краткий список редакторов:
Вот скриншот расширенного текстового редактора:
Вот скриншот онлайн-текстового редактора:
Загрузка файлов в Интернет
Когда ваш веб-сайт будет готов для публичного просмотра, вам нужно будет загрузить свои веб-страницы на свой веб-сервер.Вы можете купить место на сервере у различных поставщиков (см. Сколько стоит делать что-то в Интернете?). После того, как вы выберете, какого поставщика использовать, он отправит вам по электронной почте информацию о доступе, обычно в форме URL-адреса SFTP, имени пользователя, пароля и другой информации, необходимой для подключения к их серверу. Имейте в виду, что (S) FTP сейчас несколько устарел, и другие системы загрузки начинают становиться популярными, такие как RSync и Git / GitHub.
Примечание. FTP по своей сути небезопасен.Вы должны убедиться, что ваш хостинг-провайдер разрешает использование безопасного соединения, например SFTP или RSync через SSH.
Загрузка файлов на веб-сервер — очень важный шаг при создании веб-сайта, поэтому мы подробно рассмотрим его в отдельной статье. А пока вот краткий список бесплатных базовых (S) FTP-клиентов:
Просмотр веб-сайтов
Как вы уже знаете, для просмотра веб-сайтов необходим веб-браузер. Существуют десятки вариантов браузера для личного использования, но когда вы разрабатываете веб-сайт, вы должны протестировать его, по крайней мере, со следующими основными браузерами, чтобы убедиться, что ваш сайт работает для большинства людей:
Если вы нацелены на определенную группу (например,g., техническая платформа или страна), возможно, вам придется протестировать сайт с помощью дополнительных браузеров, таких как Opera, Konqueror или UC Browser.
Но тестирование усложняется, потому что некоторые браузеры работают только в определенных операционных системах. Apple Safari работает на iOS и Mac OS, а Internet Explorer работает только в Windows. Лучше всего воспользоваться такими сервисами, как Browsershots или Browserstack. Browsershots предоставляет скриншоты вашего сайта, как он будет выглядеть в различных браузерах. Browserstack фактически предоставляет вам полный удаленный доступ к виртуальным машинам, поэтому вы можете протестировать свой сайт в наиболее распространенных средах.В качестве альтернативы вы можете настроить свою собственную виртуальную машину, но для этого потребуется некоторый опыт. (Если вы идете по этому пути, у Microsoft есть некоторые инструменты для разработчиков, включая готовую виртуальную машину на modern.ie.)
Обязательно проведите несколько тестов на реальном устройстве, особенно на реальных мобильных устройствах. Моделирование мобильных устройств — это новая развивающаяся технология, которая менее надежна, чем моделирование настольных компьютеров. Мобильные устройства, конечно, стоят денег, поэтому мы предлагаем обратить внимание на инициативу Open Device Lab.Вы также можете поделиться устройствами, если хотите протестировать на многих платформах, не тратя слишком много.
Конструкторы сайтов против кодирования — что для вас лучше?
Чтобы начать свой бизнес, вам необходимо приобрести навыки многозадачности. Вдруг вам нужно стать экспертом во всем.
Одна важная вещь, которую вам нужно сделать, — это научиться создавать веб-сайты, поскольку это будет ваша визитная карточка в Интернете. Итак, вы начинаете искать информацию по этой теме в Google и сталкиваетесь с множеством интересных статей о профессиональных конструкторах веб-сайтов .Вы никогда не слышали о них раньше. Они кажутся вам идеальным решением!
Но… вы уверены? Помните, что самые простые и дешевые решения не всегда являются лучшими (и во многих случаях они в конечном итоге не самые дешевые). Давайте подробнее рассмотрим популярных конструкторов веб-сайтов (мы уверены, что вы знаете их рекламу наизусть) и сравним их с наймом профессионального веб-разработчика для создания вашей страницы.
Также обратите внимание на то, что вам нужно для создания веб-сайта 👇
https: // dotinum.com / blog / 2018/01/11 / building-website-beginners-kit /
Создание веб-сайта с помощью конструктора веб-сайтов
Конструктор веб-сайтов — это, по сути, инструмент, который позволяет создавать веб-сайты без ручного редактирования кода. Это означает, что вам не нужно знать какой-либо язык программирования, чтобы создать красивый веб-сайт. Заманчиво звучит, правда?
Даже если вы непрофессионал, благодаря интуитивно понятному редактору перетаскивания вы сможете создать профессиональный сайт с красивым макетом.У вас также будет возможность сделать свой сайт удобным для мобильных устройств и интегрировать его со своими учетными записями в социальных сетях и инструментами электронной коммерции. Самыми популярными конструкторами сайтов являются Wix, SquareSpace и Weebly.
Кому следует выбрать этот вариант? Если вы новичок в бизнесе и только начали свою компанию, было бы вполне разумно создать свой веб-сайт с помощью конструктора веб-сайтов. Почему?
Преимущества
— Рентабельность — это стоит намного меньше денег, чем создание профессионального веб-сайта с помощью фрилансера или разработчика программного обеспечения вначале.Вам просто нужно заплатить за план подписки (есть несколько вариантов). Обычно это очень доступно.
— Простота в использовании — создание веб-сайта с помощью такого инструмента очень интуитивно понятно. У вас будет большой выбор красивых шаблонов веб-сайтов, и вы сможете легко персонализировать каждый элемент, какой захотите.
— Техническая поддержка — с некоторыми опциями вы получите доступ к очень полезной технической поддержке. Они проконсультируют вас, когда вы столкнетесь с неожиданными препятствиями.
— Время — , если ваш сайт должен быть готов «на завтра», конструктор сайтов — лучший выбор.Вы сможете очень быстро создать свою веб-страницу. Работа с веб-разработчиком займет у вас гораздо больше времени.
Недостатки
— Плохое SEO — при использовании веб-конструкторов вы не можете оптимизировать свой сайт для поисковых систем. У подавляющего большинства этих компаний нет инструментов SEO, а если и есть, то они недостаточно хороши. Поскольку вы не можете редактировать код, обычно вы не можете добавлять важные теги SEO, например теги заголовков и теги alt. Это приведет к потере потенциальных клиентов, потому что они не смогут легко найти вас в поиске Google
— Медленное время загрузки — , поскольку вы не сильно повлияете на код, вы не сможете оптимизировать свой сайт, если он медленный.Никто не любит вечно ждать содержания страницы.
– Обычно вы не можете экспортировать свой сайт на другие платформы. Вы не сможете перенести свой веб-сайт, потому что он размещен на сервере вашего конструктора веб-сайтов. Если вы потратите много времени и потрудитесь на разработку своей веб-страницы, а затем измените свою бизнес-идею (возможно, вы захотите расширить свой веб-сайт с помощью веб-разработчика), вам нужно будет придерживаться этой платформы, иначе вы потеряете все. Значит, вам придется воссоздавать свой сайт с нуля.
— Вы не являетесь владельцем сайта. Владелец — Wix, Weebly или любая другая компания, в которой вы создали сайт. Ваш веб-сайт не будет работать за пределами программного обеспечения компании для создания веб-сайтов. У вас даже нет кода вашего веб-сайта
— не разработан специально — ваш веб-сайт не будет выделяться из толпы, поскольку он будет иметь довольно стандартный макет, как и другие веб-сайты, созданные на этих платформах. Вы не сможете добавить много индивидуальных функций.Возможно, через некоторое время вы начнете страдать от недостатка настроек.
— Рекламные объявления — если вы очень часто выбираете бесплатную версию конструктора сайтов, вам нужно согласиться на показ назойливой рекламы.
Если вы хотите зарабатывать деньги и серьезно развивать свой бизнес, советуем вложить деньги в работу с веб-разработчиком.
Создание веб-сайта с помощью разработчика веб-сайтов
Как правило, если вы нанимаете веб-разработчика, вы можете рассчитывать, что ваш веб-сайт будет построен на очень профессиональном уровне.Особенно, если масштаб вашего проекта большой. Разработчик веб-сайта потратит много времени на понимание ваших идей, а затем будет работать над созданием веб-сайта, который поможет вам достичь ваших бизнес-целей . Это поможет вам повысить конверсию на вашем сайте.
Однако процесс не всегда работает так. Это правило распространяется не на всех. Если вы наняли очень дешевого разработчика, вы можете быть разочарованы.
Предположим, вы планируете создать веб-сайт с помощью веб-конструктора, потому что это дешевле.Но внезапно вы получаете действительно хорошее предложение от случайного разработчика. Вы в восторге от этого, потому что слышали, что лучше создавать веб-сайт с помощью программиста. Будь осторожен!
Решив работать с неопытным разработчиком, вы только потеряете деньги и время. Очень мало шансов, что он добьется желаемых результатов. Если у вас очень маленький бюджет, лучше использовать конструктор сайтов.
Однако давайте рассмотрим плюсы и минусы работы с хорошим разработчиком веб-сайтов.
Преимущества
— Профессиональный и уникальный дизайн — ваш веб-сайт будет идеально адаптирован к вашим потребностям. Он может иметь все виды функций, которые вам могут понадобиться. Более того, вам не нужно беспокоиться о том, что ваш сайт такой же, как и у ваших конкурентов.
— Оптимизирован для конверсии — профессиональный разработчик создаст ваш сайт таким образом, чтобы привлечь потенциальных клиентов. Большинство шаблонов в конструкторах веб-сайтов являются общими — это означает, что они не помогут вам продавать больше.
— Хорошее SEO — в отличие от веб-конструкторов, у которых есть минимальные инструменты SEO, разработчик веб-сайта поможет вам получить хороший рейтинг в поиске Google. Он оптимизирует все необходимые функции для вашего успеха (создание карты сайта, оптимизация метаописания, отправка в основные поисковые системы и т. Д.).
— Вы являетесь владельцем своего веб-сайта — поскольку вам необходимо купить домен и хостинг, ваш веб-сайт принадлежит вам. Вы независимы. Если вы решите сменить поставщика сервера, вы заберете свой веб-сайт с собой.При использовании конструктора веб-сайтов вы не можете перенести свою страницу на другие платформы. Если вы решили это сделать, вы вынуждены начинать все с нуля.
— Повышение скорости страницы — в веб-конструкторах вы не сильно влияете на скорость вашего сайта. С помощью веб-разработчика вы можете значительно улучшить это. Помните, что скорость вашего веб-сайта является одним из наиболее важных факторов, когда речь идет о том, насколько высоко вы занимаетесь в поиске Google.
— Профессиональная поддержка — Можете ли вы определить DNS? Сертификат SSL? Тебя подавляет весь этот технический жаргон? Не стоит беспокоиться.Веб-разработчик поможет вам со всеми этими непонятными вещами, и вы сможете сосредоточиться на самом важном для вас — своем бизнесе.
Недостатки
— Стоимость — это самый большой недостаток этого выбора и может стать препятствием для всех малых предприятий.
— Время — процесс работы с хорошим разработчиком и создание с ним плана требует времени. Если компания, занимающаяся разработкой программного обеспечения, работает очень профессионально, велика вероятность, что они будут заняты, и вам придется их подождать.Ваш веб-сайт некоторое время не будет готов.
Создав веб-сайт вместе с веб-разработчиком, вы сможете самостоятельно добавлять контент или изменять некоторые базовые функции. Однако при возникновении серьезных технических проблем вы всегда можете связаться со своим разработчиком, и он поможет вам решить проблемы.
Кто победитель?
Победителя нет. Все зависит от вашего бюджета, масштабов вашего проекта и стадии развития вашего бизнеса.
Добавить комментарий