Как написать исходный код для сайта

Как разработать дизайн и код персонального веб-сайта

Время на прочтение
8 мин

Количество просмотров 20K

Привет, Хабр! представляю вашему вниманию перевод статьи «How to Design and Code a Personal Website» автора Ryan Smith.

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

image

Зачем проектировать самостоятельно?

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

1. Выделяться из общей массы

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

2. Практикуйтесь в своем мастерстве

  • Разработка поможет вам применить на практике алгоритмы, принципы разработки, инструменты, HTML и CSS. Вам будет удобнее разрабатывать пользовательские интерфейсы и выводить их в Интернет.

3. Повышение производительности приложений

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

4. Развивать профессиональные навыки

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

5. Это может быть весело

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

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

Создание каркаса модели

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

Структура веб-сайта

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

image

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

Применяйте визуальный дизайн

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

Реализация макета

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

image

Добавление разделов и содержимого хранилища

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

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

image

Обновление графики

Шрифты и расстояние между ними имеют большое значение для придания дизайну безупречного вида. Даже простой дизайн может быть высококачественным, если хорошо выполнена графика. Опять же, вы можете копировать другой веб-сайт или искать шрифт и графические ресурсы для добавления в ваш дизайн.

image

Добавьте цвет

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

image

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

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

image

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

Уточнение

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

— Выглядит тесновато?

  • Увеличьте отступы и поля

— Трудно читать текст?

  • Выберите более четкий шрифт или увеличьте его размер
  • Увеличьте цветовой контраст между фоном и передним планом

— Трудно разобрать содержимое?

  • Добавьте заголовки с более крупным шрифтом
  • Добавьте больше интервалов между заголовками и абзацами

— Выглядит небрежно или непоследовательно?

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

image

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

Создание HTML–структуры

  • Разместите все HTML элементы на странице, пока не волнуйтесь о добавлении CSS.
  • Это позволит вам увидеть естественный поток HTML документа и рамочную модель. Создание структуры страницы в HTML облегчит понимание того, что нужно добавить в CSS, чтобы разместить и стилизовать элементы в соответствии с дизайном.
  • После создания HTML-кода перейдите к расстановке и стилизации с помощью CSS.

Стилизуйте его с помощью CSS

Поскольку HTML-документы добавляются сверху вниз, вы можете начать с верхней части документа и работать вниз. Используя созданный вами дизайн, постарайтесь скопировать его как можно ближе в HTML & CSS.

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

Расположение секций и элементов

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

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

image

Добавьте визуальные стили

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

Сделайте его отзывчивым

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

image

Когда ваш проект реализован, все готово! Теперь вы можете решить, что хотите с ним делать.

Следующие шаги

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

Заключение

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

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

  • Создание места для сайта на своём компьютере
  • Создание шаблона сайта
  • Код сайта
  • Создание директории сайта
  • Перенос сайта со своего компьютера в интернет

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

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

Короче, в самописном исполнении, без использования CMS, проще уже ничего не существует.

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

Сайт на чистом html сделаем прямо на этой странице, так сказать — сайт в сайте, вполне рабочий и готовый к заполнению контентом.

Разделим весь процесс на четыре части.

1. Создание места для сайта на своём компьютере.

2. Создание сайта.

3. Создание директории сайта

4. Перевод сайта с нашего компа на хостинг, то есть в интернет.

Создание места для сайта на своём компьютере

Первый пункт самый простой.

Нужно просто создать отдельную папку, например в разделе Документы и назвать её как вам будет угодно, например site.

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

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

Приступим ко второму пункту, самому творческому.

Создание шаблона сайта

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

Это может быть как простой виндовский Блокнот, так и любой другой текстовый редактор.

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

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

Но и до сих пор, табличная структура не устарела и с успехом применяется.

Например инвестиционная CMS H-script со сложнейшим функционалом, целиком свёрстана на основе таблиц.

Итак, вот такой сайт, с минимальным оформлением.

Как в дальнейшем оформлять таблицы, очень подробно показано в статье Таблицы HTML.

Название сайта (организации)

Описание сайта

Страница

Здравствуйте уважаемые будущие веб-мастера! Мне 55 лет и я рад приветствовать Вас на своём сайте.
Этот сайт первый, который я разработал самостоятельно, а до этого умел только входить в интернет.

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

Меню

Страница

Cтраница 1

Страница 2

Общая информация

Текст общей информации или реклама

Подвал

Код сайта:


<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>Название сайта</title>
</head>
<body>
<!--Создаём таблицу контейнер, которой задаём следующее
оформление:
border="1" - рамка вокруг контейнера. Увеличив число, можно увеличить толщину рамки.
align="center" - размещаем контейнер по центру экрана.
rules="rows" - убираем двойную рамку.
style="width:60%;" - добавляем стилевое свойства, делающее
контейнер и весь сайт "резиновым".
Сделать полноценный адаптивный дизайн, этим способом невозможно.--
>
<table
border="1"
align="center"
rules="rows"
style="width:60%;">
<!--Создаём строку-->
<tr>
<!--Создаём ячейку строки-->
<td>

<!--ШАПКА САЙТА-->

<!--В ячейке строки создаём ещё одну таблицу для шапки сайта.
Оформление:
border="1" - двойная рамка толщиной в 1px
background="images/168.png" - картинка в шапке сайта, если требуется.
Адрес картинки вы должны вставить свой.
bgcolor="#7FFFD4" - фоновый цвет в шапке, если нет картинки.
cellpadding="10" - отступ содержимого от рамки не менее 10px.
style="width:100%; border-radius:5px;" - добавляем "резиновость"
и закругляем уголки рамки--
>
<table
border="1"
background="images/168.png"
bgcolor="#7FFFD4"
cellpadding="10"
style="width:100%; border-radius:5px;">
<!--Создаём строку таблицы-->
<tr>
<!--Создаём столбец таблицы-->
<th>
<!--Содержание ячейки столбца-->
<h1>Название сайта (организации)</h1>
<h3>Описание сайта</h3>
<!--Закрываем таблицу-->
</th>
</tr>
</table>

<!--ОСНОВНОЙ КОНТЕНТ-->

<!--В этой же ячейке контейнера создаём ещё одну таблицу
для основного контента.
Оформление как и в предыдущей таблице--
>

<table
border="1"
bgcolor="#e6e6fa"
cellpadding="10"
style="width:100%; border-radius:5px;">
<!--Создаём строку-->
<tr>
<!--Создаём ячейку
Оформление:
rowspan="2" - объединяем две ячейки в одну.
Число объединяемых ячеек по числу ячеек в сайдбаре.
style="width:80%" - основной контент занимает 80% всей площади,
оставшиеся 20% для сайдбара--
>
<td
rowspan="2"
style="width:80%">
<h2>Страница</h2>
<!--Начинаем абзац с красной строки-->
<p style="text-indent:20px">
Здравствуйте уважаемые будущие веб-мастера!
Мне 55 лет и я рад приветствовать Вас на своём сайте.
Этот сайт первый, который я разработал самостоятельно,
а до этого умел только входить в интернет.</p>

<p style="text-indent:20px">Почему я решил его сделать?
За те 3 месяца, пока разбирался в
сайтостроении и создавал этот ресурс обнаружилось,
что авторы руководств по созданию
сайтов считают многие нюансы само собой разумеющимися
и не обращают на них внимание
А мне, учитывая возраст и «опыт», было не просто
понять как раз эти нюансы, они отнимали больше всего
времени.</p>
<!--Закрываем ячейку-->
</td>

<!--САЙДБАР-->

<!--Создаём ячейку сайдбара-->
<td bgcolor="#e6e6fa">
<h3>Меню</h3>
<!--Абзац для ссылки на страницу сайта-->
<p>
<!--Ссылка на страницу сайта-->
<a href="">
<!--Картинка маркера перед названием страницы-->
<img src="http://trueimages.ru/img/00/06/f4fffdb5.png">
<!--Название страницы
style="margin-left:5px;" - отступ названия от маркера--
>
<span style="margin-left:5px;">Страница</span></a>
<!--Закрываем абзац-->
</p>
<p>
<a href="">
<img src="http://trueimages.ru/img/31/ab/4dcb087c2ae4305edcd15171696.jpg">
<span style="margin-left:5px;">Страница 1</span;></a>
</p>
<p>
<a href="">
<img src="http://trueimages.ru/img/31/ab/4dcb087c2ae4305edcd15171696.jpg">
<span style="margin-left:5px;">Страница 2</span></a>
</p>
<!--Закрываем строку Меню-->
</td>
</tr>
<!--Создаём строку с дополнительной информацией-->
<tr>
<!--Ячейка с дополнительной информацией-->
<td
bgcolor="#e6e6fa"
align="center">
<h3>Общая информация</h3>
<p>Текст общей информации или реклама</p>
<!--Закрываем ячейку с общей информацией
и таблицу основного контента--
>
</td>
</tr>
</table>

<!--ПОДВАЛ-->

<!--Создаём таблицу подвала-->
<table
border="1"
bgcolor="#7FFFD4"
height="100"
cellpadding="10"
style="width:100%; border-radius:5px;">
<!--Создаём строку.-->
<tr>
<!--Создаём столбец-->
<th>
<h3>Подвал</h3>
<!--Закрываем таблицу подвала. При желании в подвале можно
сделать несколько строк и столбцов--
>
</th>
</tr>
</table>
<!--Закрываем таблицу контейнера-->
</td>
</tr>
</table>
</body>
</html>

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

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

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

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

Готовый код различных наворотов для вашего сайта вы можете найти на странице Бесплатные скрипты и CSS эффекты для сайта

Создание директории сайта

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

Все действия показаны в редакторе Notepad++. Если кто ещё не установил, то вот ссылка на инструкцию по установке: Установка Notepad++

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

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

Итак, начинаем работать.

Открываем Notepad++, открываем «Новый документ», проверяем и если нужно исправляем кодировку на uft-8 (без БОМ), копируем код сайта с моей страницы,  вставляем его в поле редактора.

Затем выбираем «Файл — Сохранить как…» , в открывшемся поисковике находим созданную при создании места для сайта папку «site», в строке «Сохранить»(внизу окна поисковика) меняем название с «nev1» на «index.html», и сохраняем.

Затем заходим в папку «site», в ней уже есть первый файл index.html, и создаём там-же ещё две папки content и images.

В результате директория должна выглядеть следующим образом:

html код сайта

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

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

Возвращаемся в редактор, выбираем меню Запуск (верхняя строка панели редактора), и в нём Launch in Chrome.

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

Если вы пишете сайт в блокноте, то запускать его нужно будет из поисковика, то есть из папки site открыть файл index.html.

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

После изменения какой либо позиции, нужно нажать Сохранить(третья иконка слева), и через Запуск посмотреть как получилось.

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

Теперь разберёмся с картинками. Изображения в моём шаблоне загружены через сервис trueimages.

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

Как сделать картинку рассказано в статье Как сделать картинку для шапки в Paint(это для тех кто не знаком с фотошопом).

А адреса у Вас буду выглядеть так: Для Главной (index.html) — images/имя рисунка.

html код сайта

А на всех последующих страницах вместо images ставиться images1.

Картинки маркеров на Главной прописываются так

А на следующих страницах так опять вместо images — images1

Вот теперь можно из шаблона сделать свой сайт, со своими изображениями, и своим текстом.

Последующие страницы делаются по тому же шаблону, только сохраняются в папке «content», и называются не «index.html», а по заголовку статьи, только в названии файла он пишется английскими буквами, с окончанием «html».

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

Адреса этих страниц определяются так. Когда Вы создадите страницу, сохраните её в папке content, выберете в Notepad++ меню Запуск, и откроете в своём браузере, то в адресной строке браузера как раз и будет нужный адрес.

Вставляется он в виде ссылки перед текстом «Другая страница» (как пишутся ссылки читайте в статье Ссылки примерно вот так

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

Когда все доработки будут сделаны, то есть сайт будет готов, можно переходить к третьему пункту — выводу сайта в интернет.

Перенос сайта со своего компьютера на виртуальный хостинг, то есть в интернет

Для этого нужно будет приобрести хостинг и домен. Что такое хостинг, можно посмотреть здесь, а доменное имя сайта — это адрес, по которому Ваш сайт будет определятся в интернете.

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

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

Я рекомендую Вам хостинг Бегет. Это один из, если не самый лучший хостинг провайдер России.

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

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

Цена хостинг + домен = 1620 руб. в год. Первый месяц(целый месяц!) — тестовый, то есть вначале покупается только домен за 120 руб в год, и только через месяц, если Вам понравилось, оплачиваются услуги хостинга.

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

А это уже встречается не часто, даже за более солидные деньги.

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

Был сайт, и нет его. Позвонил в техподдержку хостинга, и через час выяснилось, что плагин BulletProf Security, после обновления, возможно и при моём неумелом участии, наштамповал новых файлов .htaccess, и закрыл тем самым всякий доступ на сайт.

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

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

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

В каком ещё хостинге Вам окажут такую помощь. Да ни в каком. Нет таких больше.

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

Читайте там до абзаца «А вот теперь тот способ переноса сайта…». Дальше расписан перевод сайта с Денвера, и Вам это не нужно.

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

Здесь нас интересует раздел Файловый менеджер, так как именно при его помощи мы сейчас перенесём всё, что сделано у нас на компьютере, в интернет.

Итак, открываем менеджер, и дважды щёлкаем по строке с доменным именем вашего сайта.

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

Открываем папку public.html и щёлкнув по разделу Новая папка, создаём там две папки images и content. В папке content — папку images1. Короче, всё так-же, как на компьютере.

Затем находим Загрузить файлы, и щёлкнув по нему, откроем окно загрузки

Здесь заходим в Выбрать, и, в открывшемся поисковике, находим файлы и папки созданные на нашем компе, в директории site.

Первым делом выбираем файл index.html, и загружаем его на хост, нажав Загрузить в меню окна загрузки.

Затем точно таким-же образом загружаем файлы из папок images, images1, и content в одноимённые, созданные на хостинге.

Адреса страниц при этом изменятся так как в них добавиться доменное имя сайта, примерно так:

Для главной — Доменное имя/index.html
Для страниц — Доменное имя/content/straniza.html

Значит, все адреса в меню нужно будет менять. Для этого щёлкаем правой клавишей мыши по index.html, и в открывшемся меню выбираем Правка.

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

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

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

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

В открывшемся окне, в поле Кодовое значение, проставляем 644 и жмём Изменить(что такое 644 и другие права доступа можно узнать в интернете)

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

Код блочного шаблона сайта можно изучить прочитав статью Код сайта HTML+CSS. Ссылка на статью чуть ниже в меню.

Да, ещё о том, как сделать этот сайт побольше.

Для этого в директории сайта в папке content создаются несколько папок для рубрик, каждая со своей папкой images.

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

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

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

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

Каркас страницы, теги. Создаём файл. < < < В раздел > > > Валидация документа

Скачать шаблон простого сайта на HTML

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

Шаг 1. Качаем текстовый редактор

Для того, чтобы написать код, сгодится вообще любой текстовый редактор. Подойдёт даже «Блокнот» на вашем компьютере (но в нём очень неудобно всё делать). Мы скачаем и установим хороший редактор, заточенный под веб-разработку. Покажем всё на примере Visual Studio Code.

Зайдите на сайт и скачайте редактор. Если у вас Windows, то нажмите на любую из синих кнопок. Если OS X или Linux — нажмите Other platforms.

Страницы загрузки Visual Studio Code

Установка пройдёт как обычно — нужно запустить файл VSCodeUserSetup, много раз нажать «Далее» и поставить пару галочек.

Шаг 2. Запускаем редактор и осматриваемся

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

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

Добавление папки в Visual Studio Code

По шагам на скриншоте:

  1. Add workspace folder — открывает меню выбора папки.
  2. Создадим новую папку personal_page в любом удобном месте и зайдём в неё.
  3. Нажмём Add.

После этого слева появится панель Explorer с пустым рабочим пространством Untitled (Workspace). Мы создали папку, давайте её наполним.

Шаг 3. Добавляем файлы

После создания папка пустая. Щёлкнем правой кнопкой по заголовку personal_page и добавим три файла, которые понадобятся в работе — index.html, style.css и script.js. Для начала этого хватит.

Создание файлов в Visual Studio Code

Шаг 4. Делаем работу удобнее

Сейчас все три файла открыты во вкладках, и между ними не всегда удобно переключаться. Чтобы было удобнее, код со стилями можно перенести в другую часть окна, например, вниз. Для этого нажмите правой кнопкой по вкладке со style.css и выберите split down,чтобы увидеть результат.

Разделение экрана в Visual Studio Code

Шаг 5. Добавляем код

Пока отредактируем только index.html (файл с разметкой) и style.css (файл со стилями), а script.js оставим на будущее. Если у вас уже есть какой-нибудь код, напишите его, или используйте готовый — мы, например, возьмём код из интерактивных курсов.

index.html

<!DOCTYPE html>
<html lang="ru">
  <head>
    <title>Сайт начинающего верстальщика</title>
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
    <header>
      <nav>
        На главную
      </nav>
    </header>
    <main>
      <article>
        День первый. Как я забыл покормить кота

        Кто бы мог подумать, что семантика это так важно, мне срочно нужно было об этом поговорить.

        Взгляд упал на кота. Кот издал настойчивое «Мяу». И я понял — пришло время для первой записи в блог. И покормить кота.
      </article>
      <aside>
        Здесь могла быть ваша реклама.
      </aside>
    </main>
    <footer>
      Подвал сайта
    </footer>
  </body>
</html>

style.css

Скопируем код со стилями из файла — откройте его в браузере, скопируйте все строки и вставьте в файл style.css в редакторе.

Шаг 6. Запускаем код и смотрим на результат

Самый простой способ — открыть папку с файлами через проводник и запустить файл index.html. Вы увидите результат вёрстки в браузере, но это не слишком удобно — при любых изменениях придётся переходить в браузер и обновлять страницу.

Давайте настроим всё так, чтобы наша страничка открывалась сама и обновлялась, если вы что-то изменили в разметке или стилях.

Для этого нам понадобится расширение Live Server. Найти его можно прямо в VS Code (пятая иконка в меню слева) — введите название и нажмите Install. Другой способ — скачать Live Server из магазина расширений, но это менее удобно.

Расширение Live Server в Visual Studio Code

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

Оповещение безопасности Windows

Чтобы запустить код, нажмите кнопку Go Live на нижней панели.

Кнопка Go Live в Visual Studio Code

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

Рабочее пространство: слева — Visual Studio Code, справа — браузер

Что мы сделали

  1. Установили и настроили редактор кода.
  2. Создали рабочую папку и добавили туда файлы нашего проекта.
  3. Научились редактировать и сохранять файлы с кодом.
  4. Установили расширение, чтобы сразу видеть результат вёрстки.

В следующих частях — о добавлении и проверке кода на JavaScript, и о том, как сделать работу с кодом ещё удобнее.

Внеклассное чтение

  • Веб-разработка: с чего начать
  • Какие бывают редакторы кода
  • Что такое валидный код

HTML – это основа всех современных сайтов. По сути, это язык разметки, который помогает браузеру правильно отображать те или иные элементы. Чтобы создать свои первые web-страницы будет достаточно даже простого текстового блокнота (имеется ввиду программа-редактор для работы с текстом, а не бумажная записная книжка).

Какие именно шаги нужно пройти и как сделать свой первый сайт «бесплатно», «без регистрации и SMS» — ниже.

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

HTML был призван добавить интерактивности к скучным «простыням» документов, которые были практически единственным видом контента на заре зарождения глобальной паутины (из-за низких скоростей).

Фактически это язык разметки, который позволяет выделять определённые элементы страницы и задавать для них специфичные параметры (размер, шрифт, тип: картинка это, текст, ссылка, видеофайл и т.д.).

Немного о синтаксисе

Например, комбинация <h1>Здесь текст</ h1> позволяет выделить заголовок первого уровня, она состоит из открывающего и закрывающего (с косой чертой) тегов. Некоторые теги, могут использоваться самостоятельно – без закрывающих элементов.

Любой HTML-документ может быть представлен в текстовом виде и должен иметь определённую структуру.

Обязательными тегами для любых HTML-страниц являются следующие:

<HTML>
<HEAD></HEAD>
<BODY></BODY>
</HTML>

Внутри тега <HTML></HTML> располагается вся разметка страницы.

Внутри тега HEAD описываются параметры заголовка страницы, включая так горячо любимые seo-атрибуты: title и description.

А внутри BODY располагается весь остальной контент.

В общей сложности в современной версии языка разметки HTML5 используется 125 основных элементов (тегов).

Простая web-страница в блокноте

Открываете любой доступный текстовый редактор (это может быть встроенное системное приложение, например, «Блокнот» в Windows, или сторонний софт, например, Notepad++, AkelPad и т.п.).

Алгоритм работы очень простой:

  1. Создаёте новый документ.
  2. Если ваш редактор поддерживает работу с разными кодировками, то выбираете по умолчанию utf-8.
  3. Вписываете в него нужную структуру документа (с использованием нужных тегов).
  4. Сохраняете документ как текст (с расширением .txt) и меняете расширение на .html. Или сразу сохраняете файл в формате .html, если это позволяет ваш редактор.
  5. Теперь документ можно открыть в любом браузере, он распознает в нём вашу разметку и отобразит содержимое.

Обратите внимание, блокнот Windows в устаревших версиях системы сохраняет текст в кодировке ANSI (в новых версиях он работает с UTF-8), это не преступление, но вместо кириллических символов в браузере вы можете увидеть кракозябры. Поэтому с помощью специального атрибута нужно просто «подсказать» браузеру, что ему нужно работать с ANSI:

<meta charset=»windows-1251″> (тег вписывается внутри блока HEAD).

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

<!DOCTYPE html>
<html lang="ru" >
<head>
<meta charset="UTF-8">
<title>Название страницы - отображается на вкладке браузера и в поиске</title>
<style type="text/css">
a{
color: #fff;
text-decoration: none;
}
html{
background: #FFF8CC;
min-height: 100%;
font-family: Helvetica;
display: flex;
flex-direction: column;
}
body{
margin: 0;
padding: 0 15px;
display: flex;
flex-direction: column;
flex: auto;
}
h1{
margin-top: 0;
}
h1, p{
color: #006064;
}
img{
border: 0;
}
.header{
width: 100%;
min-width: 460px;
max-width: 960px;
margin: 0 auto 30px;
padding: 30px 0 10px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
box-sizing: border-box;
}
.logo{
font-size: 1.5rem;
color: #fff;
text-decoration: none;
margin: 5px 0 0 5px;
justify-content: center;
align-items: center;
display: flex;
flex: none;
align-items: center;
background: #839FFF;
width: 130px;
height: 50px;
}
.nav{
margin: -5px 0 0 -5px;
display: flex;
flex-wrap: wrap;
}
.nav-item{
background: #BDC7FF;
width: 130px;
height: 50px;
font-size: 1.5rem;
color: #fff;
text-decoration: none;
display: flex;
margin: 5px 0 0 5px;
justify-content: center;
align-items: center;
}
.sqr{
height: 300px;
width: 300px;
background: #FFDB89;
}

.main{
width: 100%;
min-width: 460px;
max-width: 960px;
margin: auto;
flex: auto;
box-sizing: border-box;
}
.box{
font-size: 1.25rem;
line-height: 1.5;
margin: 0 0 40px -50px;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.box-base{
margin-left: 50px;
flex: 1 0 430px;
}
.box-side{
margin-left: 50px;
font: none;
}
.box-img{
max-width: 100%;
height: auto;
}
.content{
margin-bottom: 30px;
display: flex;
flex-wrap: wrap;
}
.banners{
flex: 1 1 200px;
}
.banner{
background: #FFDB89;
width: 100%;
min-width: 100px;
min-height: 200px;
font-size: 3rem;
color: #fff;
margin: 0 0 30px 0;
display: flex;
justify-content: center;
align-items: center;
}
.posts{
margin: 0 0 30px 30px;
flex: 1 1 200px;
}
.comments{
margin: 0 0 30px 30px;
flex: 1 1 200px;
}
.comment{
display: flex;
}
.comment-side{
padding-right: 20px;
flex: none;
}
.comment-base{
flex: auto;
}
.comment-avatar{
background: #FFA985;
width: 50px;
height: 50px;
}
.footer{
background: #FF3366;
width: 100%;
max-width: 960px;
min-width: 460px;
color: #fff;
margin: auto;
padding: 15px;
box-sizing: border-box;
}

@media screen and  (max-width: 800px) {
.banners{
margin-left: -30px;
display: flex;
flex-basis: 100%;
}
.banner{
margin-left: 30px;
}
.posts{
margin-left: 0;
}
}
@media screen and  (max-width: 600px) {
.content{
display: block;
}
.banners{
margin: 0;
display: block;
}
.banner{
margin-left: 0;
}
.posts{
margin: 0;
}
}
</style>
</head>
<body>
<header class="header">
<a class="logo">
LOGO
</a>
<nav class="nav">
<a href="#posts" class="nav-item">Посты</a>
<a href="#comments" class="nav-item">Комменты</a>
<a href="#footer" class="nav-item">Подвал</a>
<a href="#posts" class="nav-item">Посты2</a>
</nav>

</header>
<main class="main">
<div class="box">
<div class="box-base">
<h1>Заголовок 1</h1>
<p>Здесь расположен осмысленный текст и самом важном продукте на свете...</p>
</div>
<div class="box-side">
<div class="sqr">

</div>
</div>
</div>
<div class="content">
<div class="banners">
<div class="banner">Баннер 1</div>
<div class="banner">Баннер 2</div>
<div class="banner">Баннер 3</div>
</div>
<div class="posts"  id="posts">
<div class="post">
<h1>Пост #1</h1>
<p>Концепция маркетинга индуцирует контент. Системный анализ развивает тактический рекламный клаттер. Медиавес поддерживает экспериментальный нишевый проект. Лидерство в продажах допускает эмпирический социальный статус.</p>
</div>
<div class="post">
<h1>Пост #2</h1>
<p>Департамент маркетинга и продаж реально допускает жизненный цикл продукции. Стоит отметить, что опросная анкета стабилизирует охват аудитории. До недавнего времени считалось, что promotion-кампания изоморфна времени. </p>
</div>
<div class="post">
<h1>Пост #3</h1>
<p>В соответствии с законом Ципфа, сущность и концепция маркетинговой программы синхронизирует тактический медиамикс, осознав маркетинг как часть производства. Общество потребления сознательно отталкивает презентационный материал.</p>
</div>
</div>
<div class="comments"  id="comments">
<div class="comment">
<div class="comment-side">
<div class="comment-avatar">

</div>
</div>
<div class="comment-base">
<h1 class="comment-title">Комментарий #1</h1>
<p>Рекламный бриф масштабирует из ряда вон выходящий выставочный стенд. Изменение глобальной стратегии, в рамках сегодняшних воззрений, индуцирует культурный ребрендинг.</p>
</div>
</div>
<div class="comment">
<div class="comment-side">
<div class="comment-avatar">

</div>
</div>
<div class="comment-base">
<h1 class="comment-title">Комментарий #2</h1>
<p>Имидж предприятия, в рамках сегодняшних воззрений, вполне вероятен. Стоит отметить, что имидж версифицирован. Экспертиза выполненного проекта осмысленно программирует из ряда вон выходящий клиентский спрос. </p>
</div>
</div>
<div class="comment">
<div class="comment-side">
<div class="comment-avatar">

</div>
</div>
<div class="comment-base">
<h1 class="comment-title">Комментарий #3</h1>
<p>Представляется логичным, что особенность рекламы нейтрализует потребительский сегмент рынка. Изменение глобальной стратегии редко соответствует рыночным ожиданиям. </p>
</div>
</div>
</div>
</div>
</main>
<footer class="footer"  id="footer">
Подвал сайта расположен, как это ни странно внизу, здесь можно разместить контакты и другую информацию...
</footer>
</body>
</html>

Сохраните файл как index.html и откройте в браузере.

Сайт созданный с помощью блокнота

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

Стили CSS, скрипты, картинки и другой контент

Как можно заметить, приведённый пример адаптируется под ширину окна браузера и может выстраиваться в одну вертикальную колонку на мобильных устройствах. Как так получилось? Всё дело в таблице каскадных стилей (они же CSS).

Вы можете задать для каждого HTML-тега свои параметры оформления: цвет заливки, текста, тип шрифта, его размер, отступы и многое другое. В нашем примере стили прописаны в блоке <style type=»text/css»> (между открывающим и закрывающим тегом style).

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

Например, <link rel=»stylesheet» type=»text/css» href=»mysitestyle.css»>.

mysitestyle.css можно заменить на полную (абсолютную) или даже относительную ссылку (отсчёт будет вестись относительно каталога, в котором будет лежать исходный html-файл).

Аналогичным образом вставляются js-скрипты, которые помогают анимировать страницу или добавить какие-либо специфические функции.

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

Пример вставки изображения со своего сайта (файл image.png должен лежать рядом с index.html):

<img src=»image.png» alt=»текст, который будет показан вместо изображения, если оно не загрузится» width=»190″ height=»260″>

Параметры ширины и высоты можно пропустить или задать в таблице стилей CSS.

В нашем примере вы можете заменить баннер:

  • Вместо тега <div class=»banner»>Баннер 1</div>
  • Пишем <img class=»banner» src=»image.png» alt=»баннер-картинка»>
  • Рядом с index.html кладём любое изображение в формате .png и меняем имя на image.png

Обратите внимание на указание класса (class=»banner»), этот параметр позволяет задать стиль оформления централизовано – через CSS. Поэтому изображение любого размера аккуратно впишется в имеющийся дизайн.

Точно также можно заменить все остальные баннеры на свои изображения или добавить их внутри других блоков (только в последнем случае уже без указания класса banner, иначе верстка «поедет»).

Многостраничные сайты в блокноте

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

Например, вы создаёте страницу page1.html, а нужно попасть на page2.html. тогда нужно внутри страницы page1 прописать ссылку для перехода на page2. Это делается с помощью специального тега и его параметра:

<a href=»page2.html»>Нажмите для перехода на Страницу 2</a>

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

Соответственно, если со Страницы 2 вам нужно вернуться на первую, то внутри второй страницы нужно прописать уже другой URL, который будет ссылаться на первую. И т.д.

Количество ссылок на другие страницы никак не ограничено, вы можете создавать столько страниц, сколько вам нужно.

Размещение на хостинге

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

Любой web-хостинг работает с html-файлами, даже если у него нет поддержки PHP или баз данных. Хостинг-провайдеров безумное множество, для статичных (html) сатов даже встречаются бесплатные варианты, например, GitHub Pages. Но мы рекомендуем не тратить время, и выбрать проверенный сервис, такой как Bluehost (компания работает с 2002 года и позволяет размещать даже динамические сайты, например, на популярном движке WordPress, а ещё здесь есть возможность установки любой системы управления контентом прямо из панели управления в один клик и тарифы с полным безлимитом).

Как разместить HTML-сайт на хостинге, пошагово:

  1. Вы регистрируете новое доменное имя, если его ещё у вас нет.
  2. Перенаправляете его на DNS-сервера выбранного хостера.
  3. В панели управления хостинга создаёте новый сайт (имя задаётся в соответствии с доменом).
  4. Далее в веб-версии файлового менеджера или через FTP-протокол закачиваете ваши страницы в корень каталога сайта.
  5. После того, как обновятся данные в DNS-системе и ваш домен начнёт ссылаться на сервера хостинга, сайт можно будет открыть в любом браузере просто введя имя (домен).

Стоит учесть, что если вы введёте в адресной строке vash-sait.ru, то хостинг будет пытаться загружать главную страницу, которую он ожидает увидеть с именем index.html в корне каталога (http://vash-sait.ru/index.html).

Если такого файла не будет, отобразится ошибка. Но вы можете прописать полный путь, например, vash-sait.ru/page1.html, и если файл с таким именем в каталоге сайта есть, то станица будет отображена.

Выводы

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

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

Кроме того, в большинстве случаев одним только HTML ограничиться не получится. Если вам нужна интерактивность (обратная связь от посетителей: формы заказа звонков, чат, функционал интернет-магазина и т.п.), то придётся подключать языки программирования и JavaScript или готовые CMS-системы/фреймворки.

В этом уроке мы сделаем дизайн и код нашего первого веб-сайта простым и лёгким способом. Урок рассчитан на новичков с надеждой дать вам инструменты для написания собственных сайтов согласно принятым стандартам! Начало новой недели; возможно, время получить новый навык!


Шаг 1. Что мы делаем

Делаем дизайн и кодируем этот очень простой веб-сайт. Не совсем эффектный дизайн, но очень эффективный для обучения основным методам кодирования.

111


Шаг 2 — Подготовка

Что потребуется

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

  • Photoshop или аналогичный редактор изображений
  • Редактор кода (подробнее об этом позже)
  • Базовое понимание того, как работает html, базовый синтаксис и теги. Для ускорения ознакомьтесь с официальным ресурсом w3 Schools, где вы найдёте все основы, необходимые для урока.
  • Ditto для css, вы должны понимать, как работают селекторы и быть знакомы с основными свойствами. Опять же, смотрите лучший ресурс w3 Schools
  • Очевидно, браузер. Я использую Firefox и вы, если хотите, чтобы ваш сайт повторял мои скриншоты на каждом шаге 

Макет

Мы создадим очень простой веб-сайт с четырьмя основными элементами: header, content, sidebar и footer, макет будет выглядеть примерно так:

222

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


Шаг 3 — Начало работы

Откройте чистый новый документ Photoshop, скажем, 1000px на 1200px. Мы всегда сможем его подрезать. Я делаю его довольно узким, потому что работаю на ноутбуке, но вы не стесняйтесь, если место позволяет.  

Здесь я не буду спорить о разрешениях экрана и оптимальной ширине сайта. Вам нужно знать, что content нашей страницы будет шириной 800 пикселей, и всё. Итак, в нашем документе шириной 1000px мы будем перетаскивать направляющие по меткам 100 и 900px, чтобы установить ширину. У нашего дизайна есть sidebar и я решила сделать её на треть ширины страницы. Две трети от 800 составляет около 530, поэтому давайте добавим еще одну направляющую на 630px. Установим приятный цвет фона # ebe8e8.

333


Шаг 4 — Header

Возьмите инструмент rectangle и нарисуйте большой голубой прямоугольник в верхней части документа, мой — высоты около 170px , а цвет — 23b6eb. Затем нарисуем худенький тёмно-серый bar  в самой верхней части страницы, я использовал # 5d5a5a

444


Шаг 5 — Highlight

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

Теперь слегка нажмите кончиком кисти прямо под панелью, вокруг центра документа. Старайтесь не допустить, чтобы более светлый цвет достиг края страницы (будет понятно позже). И установите режим смешивания на screen.

555


Шаг 6 — Navigation Bar

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

На панели стилей слоев добавьте градиент от # e2e3e4 до #bebdbd на 90 градусов.

666


Шаг 7 — Footer

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

777


Step 8 — Logo

Задний план

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

888

Затем добавьте стили слоя: наложение градиента и 1px штрих: градиент от # aec457 до # cdf399

8b8b8b

8c8c8c

8d8d8d

Текст

Теперь текст: большой и полужирный.

  • Шрифт: Myriad Pro
  • Стиль: Bold
  • Размер: 60px
  • Цвет: #36809a

Для придания глубины добавьте внутреннюю тень:

8e8e8e

8f8f8f


Step 9 — Слоган

Затем я просто добавила короткую строку:

  • Font: Arial
  • Style: Bold
  • Size: 30pt
  • Color: #e4dfdf

999


Шаг 10 — Навигация

Пишите ссылки хорошо и крупно, расставьте и разместите их равномерно.

  • Font: Arial
  • Style: Bold
  • Size: 30pt
  • Color: #676666

111111


Шаг 11 — Основное содержимое

Время вставлять макет контента. Я использовала размер заголовка h2, а меньший будет h3 ссылкой на html ipsum.

Сделайте текстовые поля шириной около 2/3 страницы. Стили текста:

h2 Header:

  • Font: Arial
  • Style: Bold
  • Size: 36pt
  • Color: #0e5d7a

h3 Header:

  • Font: Arial
  • Style: Bold
  • Size: 24pt
  • Color: #444444

Paragraph:

  • Font: Arial
  • Style: Normal
  • Size: 14pt
  • Color: #595858

11a11a11a

Данные в разделе «latest updates» будут помещены в маленький тег, шрифт такой же, как в абзаце, но 12pt. Я дважды копирую новость из лени.

11b11b11b


Step 12 — Sidebar

Ссылки

Затем нарисуем тощий прямоугольник над областью sidebar, цвет # d4d6d3, с 1px строкой #bebdbd

Заполните sidebar фиктивным контентом с иконками, которые я тут использовала. Шрифты такие:

h3 Headers:

  • Font: Arial
  • Style: Normal
  • Size: 24pt
  • Color: #044055

Элементы списка:

  • Font: Arial
  • Style: Normal
  • Size: 18/14pt
  • Color: #373737

12a12a12a

Кнопка

Затем мы добавим кнопку «join our team» под ссылками участников. Кнопка — просто прямоугольник с градиентом, что и у логотипа и строкой 1px цвет c7c7c7. Для текста:

  • Font: Arial
  • Style: Normal
  • Size: 24pt
  • Color: #434343

12b12b12b


Шаг 13 — Footer

Заканчивая макет, добавьте немного фиктивного текста или что хотите, к нижнему колонтитулу. Шрифт:

  • Font: Arial
  • Style: Normal
  • Size: 14pt
  • Color: #e0e2e2

131313

С дизайном страницы всё, ничего особенного, но его простота поможет вам следовать за остальной частью процесса.


Нарезка PSD

Теперь, когда у нас есть прекрасный PSD, пришло время разбить его на части, которые будем использовать. Идея здесь в том, чтобы использовать как можно меньше изображений как можно меньшего размера. Okay, начнём с header. Мы хотим растянуть его на весь экран, независимо от его ширины. Для этого мы собираемся вырезать маленький кусочек header и повторять его по экрану, сколько понадобится.


Шаг 14 — The Slice Tool

Может, вам не приходилось использовать slice tool раньше, но это действительно очень просто. Это позволяет вам нарезать файл в крошечные кусочки, которые можно экспортировать в Интернете.

Header

Итак, давайте вырежем небольшой кусочек нашего header. Нажмите и перетащите, чтобы создать срез так же, как инструмент прямоугольной области выделения. Будьте осторожны, чтобы не срезать со стороны изображения, а то не получите ни одного highlight.

14a

Теперь, когда у нас есть эта полоска, мы можем повторить её по оси X. Однако highlighted область не повторяется, поэтому мы должны всё это вырезать  . Нарежьте часть header между двумя направляющими, на ширину заявленных 800px .

14b14b14b

Footer

Для нарезки footer повторите тот же процесс с узким фрагментом footer.

14c14c14c

Всё остальное

Нам понадобятся несколько изображений: иконки «subscribe» и кнопка «join our team».

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

Итак, чтобы нарезать кнопку, мы можем использовать ту же технику, что с header и footer, но на этот раз нам нужен только один тонкий срез. Когда делаете срез, не забудьте включить 1px строку (добавим позже), вам может понадобиться увеличить масштаб.

14d14d14d


Шаг 15 — Экспорт в интернет  

Теперь, когда у нас есть снимки, давайте сохраним их как оптимизированные jpeg и поместим их в нужное место.

Перейдите в меню File/Save for web и устройств … В появившемся окне, удерживая клавишу shift, щёлкните, чтобы выбрать каждый фрагмент (опять же, можете увеличить масштаб). Убедитесь, что в раскрывающемся меню «preset» установлено значение JPEG-High, снимите флажок «convert to srgb» и нажмите «save»

15a15a15a

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

Убедитесь, что установлено значение «images only», «default settings» и «selected slices only.»

15b15b15b

Затем проверьте место, где были сохранены ваши файлы. Вместо поиска отдельных images, найдите папку, помеченную «images», где будут все ваши изображения. Компьютер даст каждому изображению номер, который не очень нужен. Убедитесь, что у вас правильные изображения, затем назовите их соответствующим образом.

Теперь вернёмся к этим надоедливым иконкам и логотипу. Обязательно скройте слои фона, затем снова вытащите slice tool и вырежьте красивые квадратики вокруг каждого значка и логотипа.

15c

15d15d15d

Теперь мы проходим ту же процедуру экспорта в web, что и в случае с jpeg, только на этот раз обязательно выберите PNG-24 из выпадающего меню «preset» и отметьте флажком «transparency». Переименуйте и эти файлы и папка с изображениями будет выглядеть примерно так:

15e15e15e

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


Часть 3 — HTML

Шаг 16 — Начало работы

Хорошо, займёмся html. Первое, что вам понадобится, это какой-нибудь редактор кода. Это из области личных предпочтений,
Но я рекомендую начать с бесплатного. Для Mac и ПК я настоятельно рекомендую Komodo в качестве первого редактора кода. Он имеет множество функций, которые идеально подходят для любых пользователей.
Одна из лучших особенностей — синтаксическая проверка, похожая на проверку правописания в текстовых процессорах, она выявит и объяснит небольшие ошибки.
Для ПК есть гораздо больше опций, ни одна из которых мне не знакома, но есть статья Andrew Burgess 22 Neat Code Editors for Windows

В этом уроке мы будем использовать редактор Komodo, но принципы одинаковы в каждом.


Шаг 17 — Настройка папок

Во-первых, нам нужно создать место хранения всех файлов, связанных с нашим сайтом. Создайте папку сайта, моя называется «MySite», внутри этой папки создайте другую папку, содержащую только что вырезанные изображения.
Назовите её «images». Теперь мы открываем редактор кода, эта часть будет зависеть от того, какой software  вы используете:
Если это Komodo, выберите «create new project»  и сохраните/переместите файл .kpf в папку «MySite» . Когда вы открываете файл, браузер файлов от Komodo должен отображать содержимое папки.
Затем щёлкните правой кнопкой мыши на файле проекта и выберите «add» и «new file». В появившемся окне выберите «html (xhtml)» и назовите файл «index.html».

17a17a17a

17b17b17b

Если у вас другой редактор, процесс будет схожим, но основные моменты остаются теми же: вам нужно создать файл index.html, и он должен находиться в папке «MySite» вместе с папкой с изображениями.


Шаг 18 — Настройка файла index.html

Первое, что нам нужно сделать, это объявить тип документа, кодировку символов и создать <html> теги. Во многих редакторах это должно выглядеть примерно так:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
</html>

Между тегами html нам нужен раздел «head», который содержит всю важную информацию о сайте, которая не отображается внутри body сайта.
На этом этапе всё его содержимое, это заголовок страницы, например:

<head>
  <title>MySite</title>
</head>

Ниже head, логически, мы добавляем body, также заключённое в <html> тегах . Хорошо, теперь мы имеем:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
   <head>
      <title>MySite</title>
  </head>
  <body>
     <!-- content goes here -->
  </body>
</html>

Это базовая настройка страницы, вы можете сохранить этот штамп для будущего использования.
Помните, мы говорили, что у нас есть разделы header, content, sidebar и footer?
Хорошо, теперь каждый из них будет заключён в свой <div> и ему будет присвоен соответствующий id.

<body>
    <div id="header">
    </div><!--end header -->
    
    <div id="content">
    </div><!--end content-->
    
    <div id="sidebar">
    </div><!--end sidebar-->
   
    <div id="footer">
    </div><!--end footer-->
    
</body>

ПРИМЕЧАНИЕ. Хорошо бы, особенно при первом запуске, добавлять комментарии в каждом </div>, чтобы отслеживать иерархию.

Теперь давайте еще раз взглянем на наш psd — мы хотим, чтобы срезы footer и header бесконечно повторялись по сторонам?
Нам понадобится способ растянуть эти элементы, но в то же время чтобы основной контент («content» «sidebar»)
оставался в пределах заданной ширины в центре экрана.

Чтобы справиться с этим, нам нужен большой div, содержащий расширяющиеся элементы, и div под основное содержимое.
Мы должны заметить, что текст footer также центрирован, поэтому нам нужно повторить тот же процесс для footer. 
Чтобы сделать это, нам нужно обернуть несколько divs теми, которые у нас уже есть.   У нас есть два основных раздела, main section и footer .
Каждый из них будет содержаться внутри одного большого неуправляемого div неопределённой ширины,
и содержимое каждого из них будет заключено в отдельные div, которые определяют ширину и центрирование.

Мы хотим использовать те же правила для main и footer содержимого, поэтому вместо (или в дополнение к) id’s они будут иметь определённые классы,
что означает, что вы можете создать набор правил для определения всех div с тем же классом.

Таким образом, основное содержимое будет заключено в div с id «main»  а нижний колонтитул будет заключен в div с id «footer.» Вот схема для наглядности:

181818

И разметка будет выглядеть так:

<body>
    <div id="main">
        <div id="header">
        </div><!--end header -->
    
        <div id="content">
        </div><!--end content-->
    
        <div id="sidebar">
        </div><!--end sidebar-->
        
    </div><!--end main--> 
   
    <div id="footer">
    </div><!--end footer-->
    
</body>

Теперь мы обернём каждый раздел в контейнере div классом «container.»

 
<div id="main">
    <div class="container">
         <div id="header">
         </div><!--end header -->
    
         <div id="content">
         </div><!--end content-->
    
         <div id="sidebar">
         </div><!--end sidebar-->
            
    </div><!--end main container--> 
</div><!--end main-->
        
<div id="footer">
    <div class="container">
    </div><!--end footer container--> 
</div><!--end footer-->

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


Шаг 19 — Добавление содержимого

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

19a19a19a

Header

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

 
<div id="header">
	<div id="logo">
    	</div>
	<div id="tagline">
    	</div>
</div><!--end header -->

Поскольку это самый важный заголовок страницы, логотип войдёт в <h1> тег. У нас есть больше опций для слогана, в зависимости от того, насколько они важны для вашего сайта. В этом случае я назначу <h3> тег.

Для навигации стандартом является размещение элементов меню в unordered list, причём каждый элемент списка содержит тег привязки.
Итак, мы имеем:

<div id="header">
    <div id="logo">
   	 <h1>Logo</h1>
    </div>
    <div id="tagline">
    	<h3>And a little tagline, too.</h3>
    </div>
    <ul id="menu">
    	<li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Portfolio</a></li>
        <li><a href="#">Contact</a></li>
    </ul>
</div><!--end header -->

ПРИМЕЧАНИЕ: значение «href» в тегах привязки обычно указывает на ссылку, но в этом случае символ фунта означает «link to top of page.»

Основное содержимое

Глядя на main content область, у нас есть 4 разных стиля: большой заголовок сверху, меньший,
и ещё меньший заголовок для новостей, плюс несколько абзацев и небольшие сообщения новостей.
Мы будем называть их <h2>, <h3>, <h4>, <p> и <small> соответственно. Теперь это просто вопрос вставки в ваш контент, что не очень весело, но довольно легко.

<div id="content">
        <h2>Lorem ipsum, Dolor sit</h2>
    	<h3>Nullam vulputate felis id odio interdum nec malesuada mi pretium. </h3>
    	<p>Praesent luctus egestas nisl, vitae vehicula eros rhoncus vel. 
    		Phasellus consequat arcu eu neque convallis eu vulputate diam vehicula. In eget venenatis nisl. 
    		Vestibulum id nulla eu sapien pellentesque malesuada pharetra ac lacus. 
   	    	Curabitur et ultricies quam. Aenean pretium aliquet velit, gravida vulputate urna tempus vel.  </p>
    	<p>Proin tempor erat sit amet nisl porta nec vulputate arcu imperdiet. Praesent luctus egestas nisl, vitae vehicula eros rhoncus vel. 
    		Phasellus consequat arcu eu neque convallis eu vulputate diam vehicula. In eget venenatis nisl. 
   	    	Vestibulum id nulla eu sapien pellentesque malesuada pharetra ac lacus. Curabitur et ultricies quam. Aenean pretium aliquet velit, 
		gravida vulputate urna tempus vel. Proin tempor erat sit amet nisl porta nec vulputate arcu imperdiet. </p>
    <div id="news">
    	<h3>Latest Updates</h3>
    	<h4>Vestibulum id nulla eu sapien pellentesque</h4>
    	<small>June 1, 2009</small>
    	<p>Ut vel turpis a orci pulvinar tincidunt. Mauris id purus turpis. Aliquam metus arcu, 
        	facilisis quis pellentesque vitae, dapibus non nulla. Nulla suscipit sagittis sodales. 
   	    	Etiam laoreet ante in purus laoreet id malesuada dui pretium.<a href="#"> Read More</a></p>
   	<h4>Vestibulum id nulla eu sapien pellentesque</h4>
   	<small>June 1, 2009</small>
   	<p>Ut vel turpis a orci pulvinar tincidunt. Mauris id purus turpis. Aliquam metus arcu, 
   	   	facilisis quis pellentesque vitae, dapibus non nulla. Nulla suscipit sagittis sodales. 
      	Etiam laoreet ante in purus laoreet id malesuada dui pretium.<a href="#"> Read More</a></p>
    </div><!--end news-->
</div><!--end content-->

Я добавлю теги привязки со значением «Read More» в конце каждого сообщения.

Sidebar

Возьмёмся за sidebar. Боковая панель имеет три элемента, каждый из которых будет обёрнут в свой собственный div.
Каждый div будет содержать <h3> header и unordered list и каждый элемент списка будет содержать тег привязки.
Итак, начните копировать и вставлять текст, он должен выглядеть примерно так:

<div id="sidebar">
                <div id="subscribe">
                    <h3>Subscribe!</h3>
                    <ul>
                        <li><a href="#">Subscribe via RSS</a></li>
                        <li><a href="#">Get Email Updates</a></li>
                        <li><a href="#">Follow us on Twitter</a></li>
                    </ul>
                </div>
                <div id="popular">
                    <h3>Popular Items</h3>
                    <ul>
                        <li><a href="#">Lorem ipsum dolor site amet</a></li>
                        <li><a href="#">Ulvinar tincidunt, Mauris id</a></li>
                        <li><a href="#">Lorem ipsum dolor site amet</a></li>
                        <li><a href="#">Proin tempor erat sit tene</a></li>
                    </ul>
                </div>
                <div id="contributors">
                    <h3>Contributors</h3>
                    <ul>
                        <li><a href="#">John Smith, freelance writer</a></li>
                        <li><a href="#">Jack McCoy, designer</a></li>
                        <li><a href="#">Lenny Briscoe, editor</a></li>
                        <li><a href="#">John Smith, martketing</a></li>
                    </ul>
                    <a href="#">Join Our Team</a> 
                </div>
            </div><!--end sidebar-->

Footer

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

<div id="footer">
        <div class="container">
            <p>Copyright © 2009  MySite <br />
            All Rights Reserved</p>
        </div><!--end footer container--> 
    </div><!--end footer-->

Давайте посмотрим по разметке:

19b19b19b

приятно смотрится, нет? Да, не совсем. Но содержит всю необходимую нам информацию и готов к назначению стилей.


Часть четыре — CSS

Шаг 20 — Добавление CSS

Вот здесь и происходит волшебство.
Создайте в папке сайта новый файл «style.css».
Теперь нам нужно указать браузеру, что этот файл css принадлежит нашему index.html-файлу, поэтому мы связываем его тегом «link href». Поместите эту строку кода в раздел <head> под заголовком.

<link href="style.css" rel="stylesheet" type="text/css" media="screen" />

Теперь html-файл может получить доступ к вашему css-файлу, поэтому любые изменения, внесенные в css, повлияют на html-файл.


Шаг 21 — Основная очистка

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

Сначала мы выберем шрифт для всего текста в body страницы по умолчанию:

body { font-family: Arial, Helvetica, sans-serif; }

Далее определим ширину и поля нашего класса «container» .

.container {
    width: 800px;
    margin: 0 auto; 
}

свойство margin: 0 auto является сокращением, означающим, что в верхней части нет поля и что он будет автоматически центрирован по горизонтали.
Теперь посмотрите.

21a21a21a

Намного лучше. Следующий шаг попортит внешний вид, но держитесь за мной.

CSS reset

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

Чтобы избавиться от всех этих грязных полей, мы сделаем очень простой сброс css, всего лишь правило, которое очистит от заполнения по умолчанию padding и margins. Поместите это в начало вашего файла css:

'
body, div, h1, h2, h3, h4, h5, h6, p, ul, img {margin:0px; padding:0px; }

теперь давайте посмотрим:

21b21b21b


Шаг 22 — Header

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

Мы будем играть с повторяющимся обрезком из header. Повторяющееся изображение будет находиться внутри «main» div неопределённой ширины. Нам нужно сообщить браузеру, где находится изображение, и что с ним делать (повторить, не повторить), поэтому мы используем свойство «background» и указываем путь к изображению или ‘url’: в нашем случае оно находится в папке images, поэтому пишем:

 
url (images/header_slice.jpg)

и уточняем, чтобы он повторялся по оси x:

#main {
    background: url(images/header_slice.jpg) repeat-x; 
}

Проверьте:

22a22a22a

удивительно, правда? Попробуйте растянуть ваш браузер, он просто тянется и тянется … Но мы всё ещё не видим выделения на синей полосе и поскольку мы вырезаем часть заголовка размером 800px, мы можем поместить её в наш «container» div. Проблема в том, что у нас их две (одна для main div, одна для footer), поэтому нам нужно указать, чтобы div с классом «container» находился внутри div с id  «main»
установить изображение так же, как и раньше, но на этот раз нам нужно указать «no-repeat»:

#main .container {
    background: url(images/header.jpg) no-repeat; 
}

Посмотрите:

22b22b22b

отлично! Выделение сидит именно там, где мы этого хотим, и вписываемся в повторяющиеся стороны.


Шаг 23 — Замена изображения логотипа

Наш логотип довольно сложный, правда? У нас фоновое изображение и не-html-шрифт с внутренней тенью. Мы не можем сделать это в css, поэтому мы должны заменить текст на изображение.
«Почему бы просто не поместить изображение вместо строки <h1>»?
можете вы спросить. Ну, в Интернете <h1> header  — это в основном «имя» вашей страницы, и важные, мощные роботы (google) сканируют это свойство при поиске ключевых слов. Если у вас нет <h1> header, ваш сайт можно назвать kalamazoo, но он не появится в поиске точно этого слова.
Существуют и другие методы, которые имеют свои преимущества (см. here, особенно технику № 8), но этот наиболее подходящий в этой ситуации.

Поэтому, решая проблему, мы используем хитрость под названием «замена образа», чтобы использовать изображение, сохраняя <h1> header в разметке. Добавим изображение в качестве фона в #logo div.

#logo {
    background: url(images/logo.png) no-repeat;
}

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

#logo {
    background: url(images/logo.png) no-repeat;
    height: 84px;
    width: 235px; 
}

23a23a23a

Лучше, но у нас по-прежнему есть оригинальный <h1> текст, но мы можем это исправить!  Всё, что нужно, это установить значение text-indent на что-то смешное, например -9999px вне страницы, так что никто не увидит её, кроме роботов поисковой системы.

#logo h1 {
    text-indent: -9999px; 
}

Теперь посмотрим, наш логотип с радостью сидит там, где был <h1> текст. Но это всё выглядит довольно плохо, всё теснится наверху. Когда мы хотим переместить элемент из его исходного положения на страницу, мы можем использовать свойства padding и margin. Мы собираемся попробовать оба,чтобы увидеть разницу

Во-первых, попробуем добавить margin в начало тега h1. Мы узнаем, как много можно сделать с помощью линейки в Photoshop.

#logo h1 {
    text-indent: -9999px;
    margin-top: 40px; 
}

23b23b23b

Oops! Мы переместили логотип, но вместе со страницей! Попробуем вместо этого отредактировать padding :

#logo h1 {
    text-indent: -9999px;
    padding-top: 40px; 
}

Теперь взгляните, эта чёртова штука вернулась туда, откуда взялась! Это связано с тем, что свойство margin перемещает весь элемент, но padding перемещают только содержимое элемента, оставляя фон на своём месте. Таким образом, если бы экран был, скажем, шириной 19999px, мы бы увидели, что наш <h1> header  опустился на 40px, но это не то, к чему мы стремились.

Итак, чтобы переместить фоновое изображение логотипа, нам нужно переместить div над ним, потому что весь div-логотип является «content» заголовка div. попробуем:

#logo h1 {
    text-indent: -9999px;
}

#header {
    padding-top: 40px; 
}

23c23c23c

Намного лучше! Теперь логотип выглядит так же, как в PSD, в нужном месте. Если бы мы могли исправить этот слоган …


Шаг 24 — Плавающий слоган

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

Okay, что за float? Ну, это сложно. В основном, когда вы указываете элементу ‘float’, он прикрепляется к стороне страницы или элемента, а также вынимает его из обычного «потока» страницы. Задумались? Давайте покажу.

#logo {
    background: url(images/logo.png) no-repeat;
    height: 84px;
    width: 235px;
    float: left; 
}

24a24a24a

Ну, как вы видите, нам удалось вывести слоган в сторону, но вместе с меню навигации.
Я думаю об этом так: нормальный элемент (например, div или h1 header или изображение), даже если он совсем маленький, незаметно занимает всё пространство сбоку от него, как одна большая длинная горизонтальная планка.

24b24b24b

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

#tagline {
    float: left; 
}

Посмотрите в браузере и посмотрите на это, мы сделали хуже. Теперь пункты меню обернулись вокруг нашего слогана! Нам нужно восстановить нормальный поток документа после floated элементов. Есть несколько способов, но мы используем самый прямой метод. Вернитесь в свой файл index.html и добавьте новый div под нашими floated div. Вместо класса или id к этому div, мы собираемся назначить ему стиль (да, это встроенный стиль, но только очень маленький) clear: both.

<div id="header">
    <div id="logo">
    	<h1>Logo</h1>
    </div>
    <div id="tagline">
    	<h3>And a little tagline, too.</h3>
    </div>

<div style="clear:both"></div>

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

#tagline h3 {font-size: 30px; color: #e4dfdf; }

и добавьте немного padding сверху и слева:

#tagline {
    float: left;
    padding-top: 20px;
    padding-left: 20px; 
}

посмотрите: мы куда-то продвинулись!

24c24c24c


Шаг 25 — Панель навигации

Теперь нам нужно расположить меню навигации по прямой. Во-первых, определим стиль шрифта, чтобы соответственно всё расположить. Когда вы набираете шрифт в списке тегов, вам нужно указать не только элементы списка, но и anchors внутри них. Мы указываем наш конкретный unordered list, чтобы справиться с другими отдельно. Нам также нужно избавиться от подчеркиваний и bullet points.

ul#menu {
    list-style: none; 
}

ul#menu li a {
    font-size: 30px;
    color: #676666;
    text-decoration: none; 
}

Отлично, теперь нам нужно найти способ поставить все наши ссылки подряд. Как? Больше Floats! Мы собираемся сместить элементы списка влево, чтобы каждый элемент прилипал к тому, который находится рядом с ним.

ul#menu li {
    float: left; 
}

Если вы посмотрите в браузере, заметите ту же самую проблему, с которой мы сталкивались ранее с floated элементами: другие элементы обтекают их. Как и раньше, мы можем вставить наш clearing div сразу после unordered list.

<ul id="menu">
	<li><a href="#">Home</a></li>
	<li><a href="#">About</a></li>
	<li><a href="#">Portfolio</a></li>
	<li><a href="#">Contact</a></li>
</ul>
<div style="clear:both"></div>
</div><!--end header -->

Все элементы списка теперь должны быть в строке, мы просто должны выделить их и немного сдвинуть меню. Измерив расстояние от нижней части логотипа до верхней части текста меню, мы получаем около 55px.
Первый элемент около 30px слева от направляющей, поэтому установим заполнение элемента списка в 30px слева.

ul#menu {
    list-style: none;
    padding-top: 55px; 
}

ul#menu li {
    float: left;
    padding-left: 30px; 
}

Нам нужно больше пространства между элементами, если мы измерить в psd, это около 105px, но поскольку у нас уже есть 30px padding между ними, нам нужно только добавить 75px padding справа от каждого элемента.

ul#menu li {
    float: left;
    padding-left: 30px;
    padding-right: 75px; 
}

Полюбуйтесь нашей работой:

252525

Отлично! Наше меню такое же, как в psd. Переходим к content!


Шаг 26 — Content

Верхняя область

Первое — установим все шрифты, чтобы видеть интервал, с которым надо работать. Подключите информацию о шрифтах из Photoshop:

#content h2 {
    font-size: 36px;
    color: #015878; 
}

#content h3 {
    font-size: 24px;
    color: #444444;
}

#content h4 {
    font-size: 18px;
    color: #373737;
    font-weight: normal; 
}

#content p {
    font-size: 14px;
    color: #595858; 
}

#content small {
    font-size: 12px;
    color: #373737; 
}

#content a {
    color: #0f6c8d;
    font-weight: bold;
    text-decoration: none; 
}

Получим нечто подобное:

26a26a26a

Вы можете заметить, что мы ещё не установили фоновый цвет для области содержимого. Это потому… Я забыла. Тогда сделаем сейчас, так?

body {
    font-family: Arial, Helvetica, sans-serif;
    background: #ebe8e8; 
}

Хорошо, теперь мы готовы добавить padding к пространству снаружи.
Во-первых, расстояние от нижней части nav menu до верхней части заголовка h2 составляет около 25px:

#content h2 {
    font-size: 36px;
    color: #015878;
    padding-top: 25px; 
}

Затем расстояние от нижней части заголовка h2 до верхнего края заголовка h3 также составляет около 25px, поэтому повторите в основном тот же код:

#content h3 {
    font-size: 24px;
    color: #444444;
    padding-top: 20px; 
}

Теперь расстояние от нижней части заголовка h3 до вершины первого абзаца составляет около 45px, но если мы установим padding-top до 40px, мы получим 40px padding между этими абзацами. Так как параграфы расположены друг от друга только на расстоянии 20px, нам нужно разбить padding сверху и снизу: добавьте 20px padding к нижней части заголовка h3 и 20px padding в начало абзаца.

#content h3 {
    font-size: 24px;
    color: #444444;
    padding-top: 20px;
    padding-bottom: 20px; 
}

#content p {
    font-size: 14px;
    color: #595858;
    padding-top: 20px; 
}

Проверьте результат:

26b26b26b

Новая секция

Расстояние между разделами немного отличается в разделе новостей, в первую очередь, нам нужно немного сжать его. Также слишком много padding под заголовком h3, так что немного сократим.
Нам также нужно уменьшить padding над параграфами и добавить padding между двумя новостями.

#news {
    padding-top: 10px; 
}

#news h3 {
    padding-bottom: 10px; 
}

#news p {
    padding-top: 10px;
    padding-bottom: 14px; 
}

Будет выглядеть так:

26c26c26c

Теперь нам нужно получить sidebar в стороне и мы закончим основной контент.


Шаг 27 — Располагаем Sidebar

Во-первых, нужно установить ширину секции контента:

#content {
    width: 510px; 
}

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

#content {
    width: 510px;
    float: left; 
}

#sidebar {
    float: left; 
}

В своём браузере вы заметите, что текст footer обернулся вокруг sidebar. Мы знаем, как справиться с этой проблемой: просто нужно добавить наш небольшой clearing div в разметку:

<div id="contributors">
	<h3>Contributors</h3>
	<ul>
		<li><a href="#">John Smith, freelance writer</a></li>
		<li><a href="#">Jack McCoy, designer</a></li>
		<li><a href="#">Lenny Briscoe, editor</a></li>
		<li><a href="#">John Smith, martketing</a></li>
	</ul>
	<a href="#">Join Our Team</a> 
</div>
</div><!--end sidebar-->
<div style="clear:both"></div>

</div><!--end main container--> 

</div><!--end main-->

Хорошо, следующий шаг — просто скопировать стили шрифта из нашего psd для sidebar:

#sidebar h3 {
    font-size: 24px;
    color: #044055;
    font-weight: normal;
}

#sidebar ul li a {
    font-size: 14px;
    color: #393838; 
}

Помните, что для стиля шрифта ссылок в unordered list, нам нужно обратиться к anchor тегу, а не к самому элементу списка.
Теперь, если мы посмотрим на наш psd, заметим, что текст для элементов списка в виджете «subscribe» немного больше, чем в остальной части sidebar. Для исправления нам нужно настроить таргетинг на конкретный unordered list, поэтому добавим значение id в subscribe ul в нашей разметке:

<ul id="subscribe">
	<li><a href="#">Subscribe via RSS</a></li>
	<li><a href="#">Get Email Updates</a></li>
	<li><a href="#">Follow us on Twitter</a></li>
</ul>

Тогда мы можем обратиться к ней в css:

ul#subscribe li a {
    font-size: 18px; 
}

27a27a27a

Теперь делаем стиль sidebar: добавьте отступы, поля, фон и границы. Сначала давайте избавимся от bullets:

#sidebar ul {
    list-style: none; 
}

ОК, пока ещё всё не в том месте, поэтому давайте исправим это, добавив margins вверх и влево. Измеряя в вашем psd, измерьте, где начинается граница sidebar .

#sidebar {
    float: left;
    margin-left: 55px;
    margin-top: 35px;
}

Теперь для фона: под свойством margin-top добавьте свойства background и border:

background: #d4d6d3;
border: 1px solid #BEBDBD;

Затем мы добавим 15 px padding со всех сторон:

padding: 15px;

А затем добавим padding в стили текста, чтобы выделить наше меню:

#sidebar h3 {
    font-size: 24px;
    color: #044055;
    font-weight: normal;
    padding-bottom: 20px;
    padding-left: 15px;
}

#sidebar ul {
    list-style: none;
    padding-bottom: 25px;
}

#sidebar ul li a {
    font-size: 14px;
    color: #393838; 
}

ul#subscribe li {
    padding-bottom: 5px; 
}

ul#subscribe li a {
    font-size: 18px; 
}

27b27b27b

Наш sidebar уже выглядит почти идеально, нам просто нужно добавить значки в разделе подписки и создать тег «join us» .

Хорошо, поработаем с иконками. Добавление изображений в unordered list может показаться запутанным, но если вы делаете шаг за шагом, толк будет. Но это немного утомительно.
Для начала нам нужно оставить места для значков. Мы установим их как фоновые изображения, поэтому, если мы используем свойство padding для перемещения элементов списка по битам, они не будут затронуты. Значки около 26px в ширину, поэтому мы добавим padding  слева от элементов списка:

ul#subscribe li {
    padding-bottom: 5px;
    padding-left: 30px; 
}

Теперь нужно настроить target на каждый отдельный элемент списка, поэтому мы добавим некоторые id в разметку:

<ul id="subscribe">
	<li id="rss"><a href="#">Subscribe via RSS</a></li>
	<li id="email"><a href="#">Get Email Updates</a></li>
	<li id="twitter"><a href="#">Follow us on Twitter</a></li>
</ul>

Теперь мы добавляем фоновые изображения для каждого элемента списка:

li#rss {
    background: url(images/rss_icon.png) no-repeat; 
}

li#email {
    background: url(images/email_icon.png) no-repeat; 
}

li#twitter {
    background: url(images/twitter_icon.png) no-repeat; 
}

В этот момент мне пришло в голову, что, возможно, 18px многовато для ссылок, поэтому я уменьшила его до менее драматичных 16px, что позволило мне добавить немного padding левого края, не растягивая sidebar.

ul#subscribe li {
    padding-bottom: 5px;
    padding-left: 35px; 
}

27c27c27c

Наш маленький sidebar почти завершён! Теперь к стилю кнопки:

Нужно настроить target на кнопку, поэтому давайте добавим класс к разметке: (на этот раз вместо id будет класс, что является обычной практикой, поскольку мы могли гипотетически добавить ещё несколько кнопок)

<a href="#" class="button">Join Our Team</a>

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

a.button {
    color: #393838;
    text-decoration: none;
    background: url(images/button_slice.jpg) repeat-x; 
}

27d

как видите, фоновое изображение есть, но оно появляется только за текстом, мы должны дать ему пространство. Во-первых, дадим margin, чтобы он оказался в центре sidebar:

  margin-left: 30px;

и некоторый padding с каждой стороны, так чтобы наша кнопка разместилась:

 padding: 13px 23px;

Это короткий способ записи свойств padding и он полностью приемлем, поскольку экономит место. В этом случае он определяет 13px padding в верхней и нижней части и 23px padding слева и справа.

27e

кнопка отлично выглядит, но, к сожалению! Переместилась вправо на 23px, так что давайте немного уменьшим margin для компенсации:

margin-left: 14px;

Теперь давайте дадим ей немного места, добавив padding ко всему sidebar div:

#sidebar {
    float: left;
    margin-left: 55px;
    margin-top: 35px;
    background: #d4d6d3;
    border: 1px solid #BEBDBD;
    padding: 15px 15px 30px 15px;  
}

Вот опять свойство краткости: в таком порядке: сверху, слева, снизу, справа. Так что здесь написано 15px со всех сторон, кроме нижней, которая должна быть 30px.

Наконец, нужно добавить границу 1px к классу кнопок:

 border: 1px solid #c7c7c7;

27f

И вот он, наш sidebar!


Шаг 28 — Footer

И последнее, не менее важное: наш простой маленький footer. Мы установим footer так же, как мы установили header:
Использование повторяющегося фрагмента в пределах div неуказанной ширины, а затем добавления содержимого внутри фиксированного по ширине, центрированного div.
Здесь нам пригодится .container div, потому что нам не нужно указывать 800px или margin: auto на этот раз, потому что это уже сделано.
Начнем с повторяющегося фрагмента:

#footer {
    background: url(images/footer_slice.jpg) repeat-x; 
}

28a28a28a

Это начало, но оно действительно крошечное. Давайте добавим padding и сделаем текст белым:

#footer {
    background: url(images/footer_slice.jpg) repeat-x;
    padding-top: 20px;
    padding-bottom:60px;
    margin-top: 40px;
    color: #fff; 
}

28b28b28b

и в целом:

28c28c28c


Шаг 29 — Маленькие изменения

В браузере вещи выглядят немного иначе, чем в Photoshop, поэтому мы могли бы внести небольшие изменения. Например, я хотела бы немного больше padding над основным контентом и sidebar. Мы добавим его в низ меню.

ul#menu {padding-bottom: 50px}

Я также решила сдвинуть меню влево, поэтому я собираюсь удалить padding-left. Теперь элементы расположены плотнее, потому что у нас есть padding из 75px справа и 30px слева, в общей сложности 105. Теперь, когда мы убрали левый padding,нам нужно добавить его справа, чтобы убрать разницу:

ul#menu li {
    float: left;
    padding-right: 105px;
    width: 95px; 
}

И общий финал:

292929

Итак, дальше … подожди? Что? Мы закончили?
Мы закончили!

Теперь небольшая уборка: Validation.


Шаг 30 — Проверка

Теперь validation является решающим шагом в дизайне веб-сайта, я не буду вдаваться в бесконечные причины этого, потому что this article сделает это лучше. Я собираюсь пройти этот процесс:

HTML Validation

Перейдите в w3.org Validation Service, выберите подтверждение по загрузке файла, выберите файл index.html и нажмите «check.»
Дальше… Момент истины:

RED (Red плохо!)

Не волнуйся, всё не так плохо; посмотрим, что пошло не так:
похоже, что есть одна ошибка:

30a30a30a

Они поймали меня на одном и том же id tag дважды, что может вызвать серьёзную путаницу. Поскольку у нас есть много стилей, определенных для ul с идентификатором «subscribe», мы просто изменим имя div: назовем его «feeds»,
Теперь надо проверить, что не определили какие-либо стили для #subscribe, а у нас их нет!
Для подстраховки давайте перезагрузим нашу страницу, чтобы избежать непреднамеренных изменений.
Выглядит хорошо! Проведём validation снова:

Успешно! Наша страница с правильным XHTML. Вы даже можете загрузить значок, если хотите похвастаться.

Примечание: я приятно удивилась, обнаружив только одну ошибку, если вам не повезло, прочитайте предлагаемую информацию в w3 shcools или прочтите this article by Glen Stansberry.

Кажется, мы закончили! Ах, если бы всё было так просто. Нам ещё нужно проверить CSS!

CSS Validation

Перейдите к The w3 CSS Validator и выполните тот же процесс, что и с html, только на этот раз выберите файл style.css. Проверяем…

Всё правильно!

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

30b30b30b

Это всего лишь несколько небольших проблем: мы должны были объявить ширину для всех наших floated items. Опять же, эти предложения не являются обязательными, но лучше всего прислушиваться к конструктивной критике.
Очистка: элементы слогана, меню unordered list и sidebar должны иметь ширину. Мы хотим это сделать, не изменяя внешний вид страницы.
Сначала слоган. Мы можем только грубо догадаться, что это около 400px в ширину.

#tagline {
    float: left;
    padding-top: 20px;
    padding-left: 20px;
    width: 400px; 
}

И перезагрузка: без изменений, отлично. Дальше, элементы menu list. Это немного сложнее: наша страница шириной 800px, так что это максимальная общая ширина элементов списка. Если разделить на четыре и задать ширину 200px, элементы будут перемешаны и отобразятся по вертикали. Это потому, что у нас есть padding по обеим сторонам каждого элемента списка: 30px слева и 75px справа. Вычтите 105 из 200, оставшаяся ширина равна 95px.

ul#menu li {
    float: left;
    padding-left: 30px;
    padding-right: 75px;
    width: 95px; 
}

То же самое с sidebar:  давайте сначала посмотрим на ширину области содержимого: 510px. Остаток на странице от 800px составляет 290px, но сначала нам нужно вычесть все отступы слева и справа: 290-30 = 260. Затем вычитаем левое поле, и мы остаемся с 205px. Ещё одно: наша граница 1px, поэтому давайте вычтем ещё 2px и установим ширину sidebar 203px. Проверьте снова, без изменений.

Отлично, проверяем ещё раз, ошибок нет, даже предупреждений!
Наша веб-страница, насколько это касается стандартов w3c, совершенна.


Заключение

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

  • Следуйте за нами на Twitter, подписывайтесь на Nettuts + RSS Feed за статьями и уроками по веб-разработке.

Как создать сайт бесплатно и самостоятельно с полного нуля не имея технических знаний? Что такое «домен» и «хостинг» и зачем они нужны? Что такое «HTML-сайт», «CMS-система» и «конструктор сайтов» и в чем их ключевые отличия друг от друга?

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

  • Технические аспекты создания сайта
    • Конструкторы сайтов
      • Простой пример создания сайта
    • CMS-системы
      • Топ бесплатных CMS-систем
      • Топ платных CMS-систем
    • Самостоятельное создание сайта
      • Создание HTML-сайта
      • Ключевые этапы создания сайта
      • Создание макета сайта
      • Верстка сайта
      • Создание сайта с помощью PHP
    • Создавать сайт с нуля или на конструкторе сайтов?
    • Полезные программы для начинающих вебмастеров
  • Публикация созданного сайта в сети Интернет
    • Что такое «домен» и зачем он нужен
    • Как выбрать домен
      • Где можно купить домен?
    • Что такое «хостинг»
    • Как выбрать хостинг
    • Размещение готового сайта на сервере
  • Вместо заключения
  • Ответы на вопросы
    • Можно ли создать полноценный сайт абсолютно бесплатно?
    • С чего начать обучение будущему вебмастеру (создателю сайтов)?
    • Как найти и выбрать специалистов для создания сайта
    • Где можно пройти профессиональное обучение созданию сайтов?
    • Можно ли бесплатно изучить основы сайтостроения?
    • Можно ли самостоятельно создать собственный сайт?
    • Можно ли заработать на создании сайтов?

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

  • с помощью конструкторов сайтов;
  • с помощью CMS-систем;
  • путем самостоятельного написания исходного кода сайта.

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

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

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

Наиболее популярные конструкторы сайтов

  • uKit – лучший конструктор на российском рынке для создания простых и эффективных сайтов своими руками, целится на бизнес-аудиторию: визитки, лендинги, корпоративные сайты с новостным разделом, портфолио и т.п. Здесь легко начать с готовых шаблонов, очень простой и удобный для новичков визуальный редактор, масса действий по продвижению, рекламе, подключению доменов, добавлению аналитики – автоматизирована. Больше деталей и цены подписок – в нашем подробном обзоре uKit + мануал по работе с этим конструктором.
  • Nethouse – конструктор, который отлично подойдет для создания сайтов-визиток, сайтов-портфолио, интернет-магазинов. Он достаточно прост в первичном освоении и дальнейшем использовании. Мы подготовили его подробный обзор, а также пошаговое руководство.
  • Wix – крупнейший игрок с мировым охватом, хорошо локализован для российской аудитории, имеет много профильных инструментов. Правда, с недавних пор наблюдаются проблемы с приёмом оплаты на сайтах интернет-магазинов, она недоступна, и сложно оплатить подписки самого сервиса с карт российских банков. У нас есть отдельный подробный обзор этого конструктора, а также пошаговое руководство по работе с ним. Чем заменить Wix.

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

Давайте вкратце пробежимся по этапам создания сайта в конструкторе uKit. Он отлично подойдет для представителей малого бизнеса и новичков, которые не желают погружаться в тонкости создания сайтов. uKit избавит вас от необходимости делать свой первый ресурс на «голом» HTML или разбираться с особенностями работы CMS.

Сам процесс состоит из нескольких понятных и простых шагов, о которых чуть ниже!

Шаг первыйрегистрация в конструкторе и вход в аккаунт.
Проходим простую процедуру регистрации, заполнив данные формы либо просто авторизовавшись в одной из популярных соц.сетей (подойдут также аккаунты поисковиков Яндекс и Google).

Определитесь с нужным вам функционалом и выберите подходящую подписку. Стандартные цены uKit – от 2,5 $/месяц. Это с учетом скидок за оплату наперед, от года и более. 14 дней тестирования – бесплатно.

Чтобы получить максимально выгодное предложение по подписке uKit прямо сейчас, воспользуйтесь нашим промокодом: IT-15.

Шаг второй – выбираем шаблон дизайна для будущего сайта.
Конструктор предоставляет в распоряжение пользователей коллекцию из более 350 уникальных бесплатных шаблонов! И это не просто «рыбы», текст и описания в блоках осмысленные, полностью соответствуют тематике. Для сайтов, которые не нуждаются в уникальном контенте, например, при создании лендингов и визиток, останется поменять только контакты.

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

Редактор сайта Ukit

Шаг третий – оформляем и персонализируем сайт.
В первую очередь необходимо дать создаваемому ресурсу уникальное имя (изначально — это домен третьего уровня, фактически это техническое имя сайта, позже его лучше заменить на свой домен второго уровня, красивый, понятный и запоминающийся). Стоит отметить, что в случае с ru/рф-зонами, домен даже не придётся настраивать, нужные ресурсные записи внесутся автоматически. Только регистрировать домен необходимо через админ-панель сервиса.

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

В частности можно:

  • Добавлять на сайт необходимые страницы и наполнять их контентом.
  • Фотогалереи, слайдеры и видеоролики. У uKit нет ограничений по месту на диске – полный безлимит во всех подписках!
  • Разнообразные функциональные элементы, такие как формы, кнопки и меню.
  • Кнопки социальных сетей и специальные виджеты соцсетей (подписчики, участники групп и т.п.)
  • Функционал для ведения блога компании (новостного раздела).
  • Реализовать простой интернет-магазин (без массового экспорта и импорта, но с полноценной оплатой, корзиной и уведомлениями).
  • Получить все необходимые SEO-возможности для продвижения создаваемого сайта – мета-теги, элементы микроразметки, автоматическое сжатие изображений и плавную подгрузку по скроллу (для ускорения отрисовки и повышения ранжирования). Есть даже встроенный SEO-мастер, который автоматически найдёт основные проблемы на страницах и порекомендует действия.
  • Добавить красочный favicon.
  • Разнообразные счетчики и метрики для отслеживания важных параметров и характеристик сайта (подключение аналитики происходит в специальном мастере, никакой код никуда добавлять не нужно, данные отображаются внутри панели управления).
  • И еще множество других модулей под разные задачи – виджеты калькуляторов uCalc, кнопки заказа обратного звонка, онлайн-чаты, прайс-листы, счётчики обратного отсчёта и т.п.

Шаг четвертый – финальные штрихи и запуск.

  • Просмотрите мобильную версию, убедитесь, что вас все устраивает.
  • Проверьте ранее введенные контактные данные, попробуйте работу форм и кнопок в деле.
  • Обязательно сделайте «Предпросмотр» перед запуском сайта. Определитесь с тем, какие блоки показывать в десктопной версии сайта, а какие – в версии для планшетов или для смартфонов.
  • И наконец, нажмите кнопку «Опубликовать», чтобы созданный вами сайт стал частью всемирной паутины и был доступен всем пользователям.

Простой пример создания сайта

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

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

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

Термин CMS происходит от английского выражения Content Management System и используется для обозначения так называемых «систем управления контентом» (сайтом).

Эти же системы зачастую называют «движками» для сайтов. На сегодняшний день любая CMS-система позволяет управлять всем содержимым сайта с помощью простого и наглядного интерфейса.

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

  • WordPress – отлично подходит для создания блогов, сайтов-визиток, корпоративных сайтов. Кстати, сайт, который вы сейчас читаете, работает на базе именно этой CMS. И мы уже опубликовали руководство, в котором рассказывается о том, как создать сайт на WordPress.
  • Joomlaеще одна многофункциональная CMS-система, которая позволяет создать как простой сайт-визитку или корпоративный сайт, так и полноценный интернет-магазин. Обязательно прочитайте наше руководство, посвященное тому, как создать сайт на Joomla.
  • InstantCms – в первую очередь, этот движок предназначен для создания социальных сетей, городских порталов, а также сайтов знакомств и онлайн-клубов;
  • Drupal — ещё одна популярная CMS-система, которая отлично подходит для создания корпоративных сайтов, сайтов-визиток, а также сайтов-портфолио, социальных сетей и интернет-магазинов;
  • OpenCart –данная CMS-система предназначена, прежде всего, для создания интернет-магазинов. Вместе с тем стоит учитывать, что она проста в использовании, но при этом достаточно сложна в плане разработки. Как показывает практика, для разработки полноценного интернет-магазина на основе этого движка требуется привлечение опытного PHP-программиста.
  • phpBB – отличная CMS-система, предназначенная для создания форумов.
  • «1С-Битрикс» — мощная и многофункциональная система управления сайтами. Она позволяет создавать и поддерживать интернет-ресурсы практически любого типа. В качестве ключевых особенностей стоит выделить простоту управления созданным сайтом, высокую производительность, интеграцию с (это очень важный момент для российских интернет-магазинов), а также обширные возможности мобильного администрирования.
  • UMI.CMS – еще один достойный представитель платных CMS-систем. Девиз его разработчиков — «удобство для людей». Специально для этого движка было создано 500 уникальных шаблонов, которые подойдут практически для любого сайта и при этом предоставят возможность доработки под каждый конкретный проект. А 2500 разработчиков будут рады помочь вам в создании сайта на основе UMI.CMS и его «затачивании» именно под ваши цели.
  • osCommerce — платная CMS-система, предназначенная для создания современных интернет-магазинов и обладающая богатейшими функциональными возможностями.

Специально для тех, кто хочет научиться самостоятельно писать исходный код создаваемого сайта, мы подготовили пошаговую инструкцию по созданию простого сайта на HTML. Поехали!

Внимание! Если вы абсолютный новичок или просто не хотите погружаться в работу с кодом и другие технические моменты, можете смело переходить к разделу «Создать сайт с нуля или на конструкторе сайтов?»

В качестве первого примера мы создадим простой HTML-сайт, который будет состоять всего из одной страницы. HTML (HyperText Markup Language — язык разметки гипертекстов) – универсальный язык, предназначенный для описания веб-страниц. Его задача заключается в том, чтобы указать браузеру, что и как нужно отображать при загрузке страницы в браузере пользователя. Каждый из его тегов описывает фрагмент страницы.

Ниже приводится исходный код простейшей HTML-страницы:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<base href="https://www.internet-technologies.ru/wp-content/uploads/pages/createMySite/" />
<title>Туристическое агентство ТурБюро</title>
<meta name="description" content="Описание страницы" />
<meta name="keywords" content="Ключевые слова" />
<link rel="stylesheet" type="text/css" href="style.css" media="screen" />
</head>
<body>
<div id="page">
<header>
<a href="/" title="" class="logo"><img src="images/logo.png" alt="Туристическое агентство" /></a>
<div class="phone">+7 (123) 45-67-89</div>
<nav>
<ul id="top_menu">
<li><a href="index.html">О компании</a></li>
<li><a href="services.html">Наши услуги</a></li>
<li><a href="contacts.html">Контакты</a></li>
</ul>
</nav>
<div class="header_img">
<img src="images/header_img.jpg" alt="Туристическое агентство" />
</div>
</header>
<section id="content">
<h1>Приветствуем Вас на сайте ТурБюро!</h1>
<img src="images/content_img.jpg" alt="Картинка" class="float-right" />
<p>Здравствуйте! Мы рады приветствовать вас на сайте туристического агентства «ТурБюро»! Мы предлагаем нашим клиентам только самые интересные и захватывающие приключенческие туры по всему миру!</p>
<p>Только у нас вы сможете полететь в Индию на слоне и окунуться в глубокое синее море, держась за плавник акулы. Но не волнуйтесь - каждый клиент нашего агентства застрахован по полной программе и жаждет приключений снова и снова!</p>
<p>Если вам нечего заняться, вы поистине решили заняться приключениями на свою голову, то приглашаем вас в офисы нашей компании по всей стране для выбора самых вкусных предложений.</p>
</section>
<footer>
<a href="https://www.internet-technologies.ru/" title="Сайтостроение от А до Я">Сайтостроение от А до Я</a><br />Все права защищены
</footer>
</div>
</body>
</html>

Скопируйте этот код в новый текстовый файл и сохраните его на своем компьютере. Задайте для сохраняемого файла имя index.html. Затем откройте этот файл в любом браузере и посмотрите на результат.

Результат сверстанного макета сайта

Обратите внимание, что по умолчанию любой веб-сервер пытается выдать браузеру именно страницу с названием index.html. Поэтому в 99% случаев исходный код главной страницы сайта сохраняется в файле под таким названием и это считается хорошим тоном.

Полную версию этого простейшего HTML-сайта вы можете скачать в виде архива (10,8Mb). После распаковки архива запускаем html/index.html.

Самостоятельное создание сайта с нуля состоит из трех основных этапов:

  • Создание макета сайта. Именно на этом этапе появляется четкое визуальное представление, как будет выглядеть создаваемый интернет-ресурс. Чаще всего используется Adobe Photoshop или другие растровые редакторы.
  • Верстка сайта. На этом этапе приступают к верстке сайта из макета .psd, мобильной адаптации и тестированию на корректное отображение в различных браузерах.
  • Внедрение PHP. На этом этапе сайт превращается из статичного в динамический.

Давайте разберемся со всеми этими этапами более подробно.

Чаще всего макет (в данном случае под этим словом стоит понимать визуальное оформление) сайта создается в программах, которые принято называть графическими редакторами. Наиболее популярными являются Adobe Photoshop и CorelDRAW. Мы рекомендуем использовать именно Photoshop, так как он чуть проще в освоении и при этом обладает богатейшими возможностями. Кроме того, именно им пользуются все веб-дизайнеры.

Создаем новый документ в Adobe Photoshop. Задаем ему имя – MySite.

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

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

Затем устанавливаем цвет фона F7F7C5 в шестнадцатеричном формате или выбираем его с помощью палитры цветов.

После этого выбираем пункт меню «Просмотр» – «Направляющие» и активируем отображение линеек и направляющих.

В пункте меню «Просмотр» — «Привязка к» необходимо проверить, что включена привязка к направляющим и границам документа.

Создаем фон будущего сайта

С помощью инструмента «Текст», вводим текстовое название будущего сайта, слоган под ним, а также контактный номер телефона справа вверху макета.

Создаем шапку будущего сайта

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

Затем с помощью инструмента «Формы» создаем прямоугольник с закруглёнными краями (радиус – 8 точек) и с его помощью обозначаем место под изображение, которое будет располагаться в шапке сайта.

Создаем верхушку будущего сайта

Теперь пришло время вставить изображение в шапку сайта.

Добавляем заглавную картинку будущего сайта

С помощью инструмента «Текст», и шрифта Georgia, входящего в стандартный набор операционной системы Windows, создаем навигационное меню и заголовок главной страницы сайта.

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

Для заголовка в тексте используем черный шрифт. Для навигационного меню – белый.

Создаем текстовое наполнение сайта

Перемещая правую границу основного текстового блока, вставляем изображение в текст страницы (справа от текста).

Используя инструмент «Формы»«Прямая», проводим заключительную линию под текстом страницы.

C помощью инструмента «Текст» (шрифт Arial) размещаем копирайт в подвале страницы (под линией).

Нарезаем необходимые для вёрстки сайта фрагменты изображений с помощью инструмента «Раскройка» (мы выделили основную картинку в шапке и картинку в тексте страницы).

Добавляем изображение в контент сайта

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

Для того чтобы сохранить и использовать результаты проделанной работы в виде изображений для последующей вёрстки сайта, переходим в меню «Файл» и выбираем пункт «Сохранить для Веб». Затем настраиваем качество выходных изображений и сохраняем их.

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

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

Прежде всего, необходимо создать новый текстовой файл и сохранить его под названием index.html.

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

Она сообщит браузеру, как именно обрабатывать содержимое страницы. Далее следует набор тегов:

<html><head> «Голова» документа</head><body> «Тело» документа</body></html>

Пара тегов <html>…</html> говорит о том, что внутри содержится HTML-код.

Внутри <head>…</head> располагаются теги, которые не отображаются в окне браузера пользователя. Как правило, они начинаются со слова meta, и называются мета-тегами, а вот тег <title>…</title> отображается в качестве заголовка окна браузера и анализируется поисковыми системами.

Далее располагается пара тегов <body>…</body>, в которые заключено содержимое страницы. Именно эта часть, которую часто называют телом страницы, отображается в браузере пользователя.

Также важно понимать, что существует несколько способов организации контента. Наиболее популярные из них – организация с помощью блоков (<div>…</div>) и в виде таблиц (<table>…</table>).

Что касается формата отображения элементов, то он может быть задан как напрямую, с использованием соответствующих тегов, так и с помощью таблиц стилей CSS. При этом именно второй способ является наиболее предпочтительным, так как он позволяет повторно применять стили компонентов. Таблица стилей задается либо в внутри тега <head>, либо в отдельном файле (чаще всего этот файл имеет имя style.css), ссылка на который также располагается внутри <head>.

В нашем случае структура элементов сайта выглядит следующим образом:

Структурный макет верстки созданного сайта

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

Более подробно изучить все основные HTML-теги, их назначение, и принципы использования таблиц стилей (CSS) можно в нашем разделе статей: «Верстка сайта».

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

Если же предоставляемая пользователям сайта информация изменяется в зависимости от каких-либо факторов или запросов, говорят, что веб-страница содержит динамический контент (является динамической).

Для создания таких страниц необходимо использовать языки веб-программирования. Среди них наиболее широко распространены PHP, Python и Ruby on Rails для Unix-систем, а для Windows характерна разработка динамического контента с использованием средств .NET.

Это все касается серверной части, а для программирования на клиентской стороне чаще всего используется JavaScript.

В подготовленном нами архиве есть папка php, в которой сохранен файл index.php. Именно он позволяет реализовать три странички нашего тестового сайта с помощью PHP.

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

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

Суть этих действий заключается в том, что мы выносим шапку и подвал сайта в отдельные файлы: header.php и footer.php соответственно. А затем на страницах с текстовым содержанием вставляем их в макет сайта с помощью PHP. Сделать это можно с помощью приведенного ниже кода:

<?php include('templates/header.php'); // Вставка шапки сайта ?>
...
<?php include('templates/footer.php'); // Вставка подвала сайта ?>

Попробуйте запустить в браузере файл php/index.php. Не получилось? Конечно нет. Ведь браузер не знает, что ему делать с командами, из которых состоит PHP-файл (он же PHP-скрипт).

Для того чтобы любой PHP-скрипт выполнился успешно, он должен быть обработан интерпретатором языка. Такой интерпретатор обязательно присутствует на всех веб-серверах и позволяет обрабатывать PHP-код. Но как же посмотреть, что изменилось в результате нашей работы?

Для отладки веб-приложений и реализации полноценного веб-сервера на компьютерах, работающих под управлением операционной системы Windows, был создан бесплатный пакет Denwer (для вашего удобства он присутствует в подготовленном нами архиве). Он включает в себя веб-сервер Apache, интерпретаторы таких языков веб-программирования как PHP и Perl, базу данных MySQL, а также средства для работы с электронной почтой.

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

Только что установленный нами веб-сервер запускается кликом по ярлыку Start Denwer (у вас он может называться иначе). После старта веб-сервера скопируйте в папку home/test1.ru/www/, расположенную на появившемся в системе виртуальном диске (обычно Z), содержимое папки php из архива, с которым мы работаем, кроме файла index.html.

После этого наберите в адресной строке браузера test1.ru. Знакомая картина? А теперь пройдитесь по ссылкам, расположенным сверху страницы. Работает? Отлично!

Создание сайта с помощью PHP

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

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

В приведенной ниже таблице мы постарались обобщить ключевые преимущества и недостатки сайта с нуля VS конструктора сайтов:

Сравнительная характеристика Сайты, созданные с помощью конструктора Сайты, созданные самостоятельно с нуля
Простота создания Просто Сложно
Скорость создания Очень быстро Долго
Возможность редактирования исходного кода Нет Есть
Возможность продвижения в поисковых системах Возможны нюансы Полная свобода
Гибкость в настройке дизайна и функциональности Ограничена Не ограничена
Возможность перенести на другой хостинг Чаще нет Есть

Какой же способ создания сайта наиболее предпочтителен?

На самом деле, однозначного ответа на этот вопрос не существует. Все зависит от ваших целей и задач. Может быть, вы хотите изучить наиболее популярные CMS-системы? А может, научиться самостоятельно формировать исходный код создаваемого сайта? Нет ничего невозможного!

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

Мы перечислим несколько полезных программ, которые значительно облегчат и ускорят процесс самостоятельного создания сайта:

Notepad++ — текстовый редактор, позволяющий создавать и редактировать исходный код создаваемого сайта. Отличная замена программе «Блокнот», входящей в состав операционной системы Windows.

Adobe Dreamweaver — мощная и многофункциональная программа для создания сайтов. Помимо всего прочего она включает в себя возможность предварительного просмотра создаваемого ресурса.

NetBeans – среда разработки приложений, которая позволяет эффективно работать с такими языками разметки и Веб-программирования, как HTML, CSS, JavaScript и PHP.

Допустим, вы уже создали свой первый сайт, но что нужно сделать, чтобы на него мог зайти любой пользователь Всемирной паутины?

Домен — это имя сайта. Кроме того, под термином «домен» зачастую понимают адрес вашего сайта в сети «Интернет».

Отличным примером домена может быть имя сайта, на котором вы сейчас находитесь — internet-technologies.ru.

Как видно из приведенного выше примера доменное имя сайта состоит из двух частей:

  • непосредственно названия сайта — в нашем случае это internet-technologies;
  • выбранной доменной зоны. В нашем случае была выбрана доменная зона «.ru». Доменная зона указывается в адресе сайта после его названия.

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

  • internet-technologies.ru – домен второго уровня;
  • forum.internet-technologies.ru – домен третьего уровня (он же поддомен).

Доменные зоны могут быть разными. Чаще всего выбор доменной зоны зависит от страны или назначения каждого конкретного сайта.

Наиболее часто используются следующие доменные зоны:

  • .ru — наиболее популярная доменная зона в рамках русскоязычного сегмента Всемирной паутины;
  • .biz — часто доменная зона используется для сайтов бизнес-тематики;
  • .com — эта доменная зона чаще всего используется для коммерческих и корпоративных сайтов;
  • .info — в этой доменной зоне достаточно часто располагаются именно информационные сайты;
  • .net — еще одна популярная доменная зона, подходящая для проектов, связанных с Интернетом;
  • .рф — официальная доменная зона Российской Федерациию

Важно! Мы настоятельно не рекомендуем использовать домены в зоне .рф. Связано это со сложностью в продвижении сайта, расположенного в этой доменной зоне.

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

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

  • оригинальность и легкость запоминания;
  • максимальна длина – 12 символов;
  • легкость набора на латинице;
  • отсутствие в имени домена знака «тире» (желательно, но не обязательно).
  • Чистота истории домена и отсутствие на нем каких-либо санкций со стороны поисковых систем. Это можно проверить с помощью сервиса «whois history».

Мы рекомендуем пользоваться услугами надежного и проверенного временем регистратора доменных имен – WebNames. Мы используем именно его.

Помимо всего прочего, сайт этого регистратора позволяет прямо в режиме онлайн подобрать имя (домен) для своего сайта. Сделать это довольно просто.

Для этого достаточно ввести в соответствующее поле желаемое имя домена и нажать кнопку «Искать домен».

Выбор домена у регистратора

Для того чтобы созданный вами сайт стал доступен всем пользователям Всемирной паутины, помимо домена вашему интернет-ресурсу понадобится еще и хостинг.
Термином «хостинг» обозначается услуга по размещению вашего сайта в Интернете. Предоставлением подобных услуг занимается большое количество компаний, которые принято называть «хостерами».

Вы должны четко понимать, что все сайты, которые доступны на просторах Всемирной паутины, где-то находятся. Если говорить более конкретно, находятся они (их файлы) на жестких дисках серверов (мощных компьютеров), находящихся в распоряжении компаний — хостеров.

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

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

При выборе хостинга для создаваемого сайта мы рекомендуем руководствоваться следующими критериями:

  • Стабильная работа. Выбранный вами хостинг должен стабильно работать 24 часа в сутки, 7 дней в неделю. Иначе вы будете нести репутационные потери в глазах посетителей, а также потеряете доверие со стороны поисковых систем. В этой связи стоит обратить особое внимание на такой параметр, как uptime хостинга. Uptime — это время, в течение которого сайт работает в штатном режиме и посетители могут его открыть в своем браузере без каких-либо проблем. Оно должно быть максимально приближено к 100%. В свою очередь время отклика сайта демонстрирует, насколько быстро ваш сайт отвечает на запрос, поступающий от браузера пользователя. Чем меньше время отклика, тем лучше.
  • Простота и удобство пользовательского интерфейса. При входе в личный кабинет вся панель управления должна быть не только доступна, но и интуитивно понятна. В частности, вы должны видеть текущий баланс, а также иметь быстрый доступ ко всем основным функциям хостинга.
  • Профессиональная русскоязычная служба поддержки. Быстрая, квалифицированная и говорящая на родном для вас языке техническая поддержка очень важна в случае возникновения различных сбоев в работе сайта и необходимости их оперативного устранения.
  • Стоимость услуг. Этот аспект важен как для начинающих вебмастеров, которые имеют в своем распоряжении ограниченный бюджет, так и для владельцев масштабных интернет-проектов, требующих использования действительно дорогостоящего хостинга.

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

Допустим, вы уже создали сайт, купили домен и хостинг. Что делать дальше?

Теперь нужно разместить все файлы нашего сайта на сервере выбранного вами хостинг-провайдера. Есть сразу несколько способов сделать это. Давайте поговорим о них.

  1. Это загрузка содержимого вашего сайта по HTTP-протоколу с помощью панели управления хостингом.
  2. По протоколу FTP с помощью так называемого FTP-клиента.

Именно второй способ является наиболее быстрым. Для этой задачи мы рекомендуем один из лучших бесплатных FTP-клиентовFileZilla.

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

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

Можно ли создать полноценный сайт абсолютно бесплатно?

С чего начать обучение будущему вебмастеру (создателю сайтов)?

Как найти и выбрать специалистов для создания сайта

Где можно пройти профессиональное обучение созданию сайтов?

Можно ли бесплатно изучить основы сайтостроения?

Можно ли самостоятельно создать собственный сайт?

Можно ли заработать на создании сайтов?

Благодарим вас за прочтение этой статьи. Мы будем очень рады, если вам помогут нашими рекомендации. Кроме того, благодарим вас за лайки и шаринги. Оставайтесь с нами, и вы узнаете еще много интересного!

Может быть, у вас есть какие-то вопросы по созданию сайтов? Задайте их в комментариях, и мы постараемся вам помочь!

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

Что такое HTML и CSS?

HTML (HyperText Markup Language, язык разметки гипертекста) задаёт структуру содержимого и его смысл, определяя такой контент как, к примеру, заголовки, абзацы или изображения. CSS (Cascading Style Sheets) или каскадные таблицы стилей — это язык презентаций созданный для оформления внешнего вида контента, использующий, например, шрифты или цвета.

Эти два языка — HTML и CSS независимы друг от друга и должны таковыми и оставаться. CSS не должен быть написан внутри HTML-документа и наоборот. Как правило, HTML всегда будет представлять содержимое, а CSS всегда будет определять его оформление.

При таком понимании разницы между HTML и CSS давайте погрузимся в HTML более подробно.

Основные термины HTML

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

Элементы

Элементы указывают, как определять структуру и содержимое объектов на странице. Некоторые из часто используемых элементов включают в себя несколько уровней заголовков (определены как элементы с <h1> до <h6>) и абзацев (определены как <p>); в список можно включить элементы <a>, <div>, <span>, <strong> и <em> и многие другие.

Элементы идентифицируются с помощью угловых скобок <>, окружающих имя элемента. Таким образом, элемент будет выглядеть так:

<a>

Теги

Добавление угловые скобок < и > вокруг элемента создаёт то, что известно как тег. Теги наиболее часто встречаются в парах открывающих и закрывающих тегов.

Открывающий тег отмечает начало элемента. Он состоит из символа <, затем идёт имя элемента и завершается символом >; например, <div>.

Закрывающий тег отмечает конец элемента. Он состоит из символа < с последующей косой чертой и именем элемента и завершается символом >; например, </div>.

Содержимое, которое находится между открывающим и закрывающим тегами, является содержимым этого элемента. Ссылка, к примеру, будет иметь открывающий тег <a> и закрывающий тег </a>. Что находится между этими двумя тегами будет содержимым ссылки.

Так, теги ссылок будут выглядеть примерно так:

<a>...</a>

Атрибуты

Атрибуты являются свойствами, применяемыми для предоставления дополнительной информации об элементе. Наиболее распространённые атрибуты включают в себя атрибут id, который идентифицирует элемент; атрибут class, который классифицирует элемент; атрибут src, который определяет источник встраиваемого содержимого; и атрибут href, который указывает ссылку на связанный ресурс.

Атрибуты определяются в открывающем теге после имени элемента. В общем, атрибуты включают в себя имя и значение. Формат для этих атрибутов состоит из имени атрибута со знаком равенства за ним, а затем в кавычках идёт значение атрибута. Например, элемент <a> с атрибутом href будет выглядеть следующим образом:

<a href="http://shayhowe.com">Shay Howe</a>

Демонстрация основных терминов HTML

Данный код будет отображать текст «Shay Howe» на веб-странице и при щелчке на этот текст ведёт пользователя на http://shayhowe.com. Элемент ссылки объявлен с помощью открывающего тега <a> и закрывающего тега </a> охватывающих текст, а также атрибута и значения адреса ссылки объявленной через href=»http://shayhowe.com» в открывающем теге.

Синтаксис HTML в виде схемы включает элемент, атрибут и тег

Рис. 1.01. Синтаксис HTML в виде схемы включает элемент, атрибут и тег

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

Настройка структуры документа HTML

HTML-документы представляют собой простые текстовые документы, сохранённые с расширением .html, а не .txt. Чтобы начать писать HTML вначале нужен текстовый редактор, который вам удобен в использовании. К сожалению, сюда не входит Microsoft Word или Pages, поскольку это сложные редакторы. Двумя наиболее популярными текстовыми редакторами для написания HTML и CSS являются Dreamweaver и Sublime Text. Бесплатные альтернативы также Notepad++ для Windows и TextWrangler для Mac.

Все HTML-документы содержат обязательную структуру, которая включает следующие декларации и элементы: <!DOCTYPE html>, <html>, <head> и <body>.

Объявление типа документа или <!DOCTYPE html> находится в самом начале HTML-документа и сообщает браузерам, какая версия HTML применяется. Поскольку мы будем использовать последнюю версию HTML, наш тип документа будет просто <!DOCTYPE html>. После этого идёт элемент <html> означающий начало документа.

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

Всё видимое содержимое веб-страницы будет находиться в элементе <body>. Структура типичного HTML-документа выглядит следующим образом:

<!DOCTYPE html>
<html lang="ru">
  <head>
    <meta charset="utf-8">
    <title>Привет, мир!</title>
  </head>
  <body>
    <h1>Привет, мир!</h1>
    <p>Это веб-страница.</p>
 </body>
</html>

Демонстрация структуры HTML-документа

Этот код показывает документ, начиная с объявления типа документа, <!DOCTYPE html>, затем сразу идёт элемент <html>. Внутри <html> идут элементы <head> и <body>. Элемент <head> содержит кодировку страницы через тег <meta charset=»utf-8″> и название документа через элемент <title>. Элемент <body> включает в себя заголовок через элемент <h1> и абзац текста через <р>. Поскольку и заголовок и абзац вложены в элемент <body>, они видны на веб-странице.

Когда элемент находится внутри другого элемента, известный также как вложенный, хорошей идеей будет добавить к нему отступ, чтобы сохранить структуру документа хорошо организованной и читабельной. В предыдущем коде оба элемента <head> и <body> вложены и сдвинуты внутри элемента <html>. Структура отступов для элементов продолжается с новыми добавленными элементами внутри <head> и <body>.

Самозакрывающиеся элементы

В предыдущем примере элемент <meta> был единственным тегом, который не включал закрывающий тег. Не переживайте, это было сделано намеренно. Не все элементы состоят из открывающих и закрывающих тегов. Некоторые элементы просто получают содержимое или поведение через атрибуты в пределах одного тега. <meta> является одним из таких элементов. Содержимое элемента <meta> в примере присваивается с помощью атрибута charset и значения. К другим типичным самозакрывающимся элементам относятся:

  • <br>
  • <embed>
  • <hr>
  • <img>
  • <input>
  • <link>
  • <meta>
  • <param>
  • <source>
  • <wbr>

Приведённая структура, сделанная с помощью объявления типа документа <!DOCTYPE html> и элементов <html>, <head> и <body>, является довольно распространённой. Мы хотим сохранить эту структуру документа удобной, поскольку будем часто её применять при создании новых HTML-документов.

Валидация кода

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

На практике

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

  1. Откройте текстовый редактор, создайте новый файл с именем index.html и сохраните его в место, которое не забудете. Я собираюсь создать папку на рабочем столе с именем styles- conference и сохранить этот файл в ней; не стесняйтесь делать то же самое.
  2. В файле index.html добавим структуру документа, в том числе тип документа <!DOCTYPE html> и элементы <html>, <head> и <body>.

    <!DOCTYPE html>
    <html lang="ru">
      <head>
      </head>
      <body>
      </body>
    </html>
  3. Внутри элемента <head> добавим элементы <meta> и <title>. Элемент <meta> должен включать в себя правильные атрибуты charset и значение, в то время как элемент <title> должен содержать название страницы, скажем «Styles Conference».

    <head>
      <meta charset="utf-8">
      <title>Styles Conference</title>
    </head>
  4. Внутри элемента <body> добавим элементы <h1> и <p>. Элемент <h1> должен включать в себя желаемый заголовок — давайте снова воспользуемся «Styles Conference», а элемент <р> должен включать в себя простой абзац для представления нашей конференции.

    <body>
      <h1>Styles Conference</h1>
      <p>Каждый год самые яркие веб-дизайнеры и фронтенд-разработчики собираются в Чикаго, 
         чтобы обсудить новейшие технологии. Присоединяйся к нам этим августом!</p>
    </body>
  5. Пришло время взглянуть на то, что мы сделали! Отыщем наш файл index.html (у меня он находится в папке styles-conference на рабочем столе). Дважды щёлкнув по этому файлу или перетащив его в браузер мы откроем его для просмотра.

    Наши первые шаги при создании сайта Styles Conference

    Рис. 1.02. Наши первые шаги при создании сайта Styles Conference

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

Основные термины CSS

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

Селекторы

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

Селекторы, как правило, связаны со значением атрибута, вроде значения id или class или именем элемента, вроде <h1> или <р>.

В CSS селекторы сочетаются с фигурными скобками {}, которые охватывают стили, применяемые к выбранному элементу. Этот селектор нацелен на все элементы <p>.

p { ... }

Свойства

Как только элемент выбран, свойство определяет стили, которые будут к нему применены. Имена свойств идут после селектора, внутри фигурных скобок {} и непосредственно перед двоеточием. Существует множество свойств, которые мы можем использовать, такие как background, color, font-size, height и width и другие часто добавляемые свойства. В следующем коде мы определяем свойства color и font-size, применяемые ко всем элементам <p>.

p {
  color: ...;
  font-size: ...;
}

Значения

Пока мы только выбрали элемент через селектор и определили, какой стиль через свойства мы хотели бы к нему применить. Теперь мы можем задать поведение этого свойства через значение. Значения могут быть определены как текст между двоеточием и точкой с запятой. Ниже мы выбираем все элементы <p> и устанавливаем значение свойства color как orange, а значение свойства font-size как 16 пикселей.

p {
  color: orange;
  font-size: 16px;
}

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

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

Структура синтаксиса CSS включает селектор, свойства и значения

Рис. 1.03. Структура синтаксиса CSS включает селектор, свойства и значения

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

Работа с селекторами

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

Селекторы типа

Селекторы типа нацелены на элементы по их типу. Например, если мы хотим ориентироваться на все элементы <div> мы должны использовать селектор div. Следующий код показывает селектор типа для элементов <div>, а также соответствующий HTML.

CSS

div { ... }

HTML

<div>...</div> 
<div>...</div>

Классы

Классы позволяют выбрать элемент на основе значения атрибута class. Селекторы классов немного более конкретны, чем селекторы типа, так как они выбирают определённую группу элементов, а не все элементы одного типа.

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

В CSS классы обозначаются с точкой впереди, за которой следует значение атрибута класса. Ниже селектор класса выбирает все элементы, содержащие значение awesome атрибута class, включая элементы <div> и <p>.

CSS

.awesome { ... }

HTML

<div class="awesome">...</div>
<p class="awesome">...</p>

Идентификаторы

Идентификаторы ещё точнее, чем классы, так как они нацелены только на один уникальный элемент за раз. Подобно тому, как селекторы классов используют значение атрибута class, идентификаторы используют значение атрибута id в качестве селектора.

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

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

CSS

#shayhowe { ... }

HTML

<div id="shayhowe">...</div>

Дополнительные селекторы

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

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

Подключение CSS

Чтобы заставить наш CSS говорить с нашим HTML мы должны указать на CSS-файл из HTML. Хорошей практикой является включение всех наших стилей в одном внешнем файле, на который есть указатель внутри элемента <head> нашего HTML-документа. Использование одного внешнего CSS позволяет нам применять одни и те же стили по всему сайту и быстро вносить в него изменения.

Другие варианты добавления CSS

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

Для создания нашей внешней таблицы стилей мы снова хотим использовать выбранный текстовый редактор, чтобы создать новый текстовый файл с расширением .css. Наш CSS-файл должен быть сохранён в той же папке или подпапке, где находится и наш HTML-файл.

Внутри элемента <head> применяется элемент <link>, который определяет отношения между HTML и CSS-файлами. Поскольку мы связываем с CSS, то используем атрибут rel со значением stylesheet для указания их отношений. Кроме того, атрибут href применяется для указания местоположения или пути к CSS-файлу.

В следующем примере HTML-документа элемент <head> указывает на внешний стилевой файл.

<head>
  <link rel="stylesheet" href="main.css">
</head>

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

Если CSS-файл располагается в подпапке, то значение атрибута href должно, соответственно, соотноситься с этим путём. Например, если наш файл main.css был сохранён в подпапке с именем stylesheets, то значеним атрибута href будет stylesheets/main.css. Здесь используется косая черта (или слэш), чтобы указать перемещение в подпапку.

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

Использование сброса CSS

Каждый браузер имеет свои собственные стили по умолчанию для различных элементов. То, как Google Chrome отображает заголовки, абзацы, списки и так далее, может отличаться от того, как это делает Internet Explorer. Для обеспечения совместимости с разными браузерами стал широко использоваться сброс CSS.

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

Есть куча разных сбросов CSS доступных для применения, у всех них есть свои сильные стороны. Один из самых популярных от Эрика Мейера, его сброс CSS адаптирован для включения новых элементов HTML5.

Если вы чувствуете себя немного авантюристом, есть также Normalize.css, созданный Николасом Галлахером. Normalize.css фокусируется не на использовании жёсткого сброса для всех основных элементов, но вместо этого на установлении общих стилей для этих элементов. Это требует более глубокого понимания CSS, а также знания того, что вы хотели бы получить от стилей.

Кроссбраузерность и тестирование

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

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

На практике

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

  1. Внутри нашей папки styles-conference давайте создадим новую папку с именем assets. В ней мы будет хранить все ресурсы для нашего веб-сайта, такие как стили, изображения, видео и т. д. Для наших стилей пойдём дальше и добавим ещё одну папку stylesheets внутри папки assets.
  2. Используя текстовый редактор создадим новый файл с именем main.css и сохраним его в папке stylesheets, которую мы только что создали.
  3. Просматривая файл index.html в браузере мы можем видеть, что элементы <h1> и <p> уже содержат стиль по умолчанию. В частности, у них задан уникальный размер шрифта и пространство вокруг них. Используя сброс Эрика Мейера мы можем смягчить эти стили, что позволит каждому из них начинать с одинаковой базы. Для этого загляните на его сайт, скопируйте код и вставьте его в верхней части нашего файла main.css.

    /* http://meyerweb.com/eric/tools/css/reset/ 2. v2.0 | 20110126
      License: none (public domain)
    */
    html, body, div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, img, ins, kbd, q, s, samp,
    small, strike, strong, sub, sup, tt, var,
    b, u, i, center,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, embed,
    figure, figcaption, footer, header, hgroup,
    menu, nav, output, ruby, section, summary,
    time, mark, audio, video {
      margin: 0;
      padding: 0;
      border: 0;
      font-size: 100%;
      font: inherit;
      vertical-align: baseline;
    }
    /* HTML5 display-role reset for older browsers */
    article, aside, details, figcaption, figure,
    footer, header, hgroup, menu, nav, section {
      display: block;
    }
    body {
      line-height: 1;
    }
    ol, ul {
      list-style: none;
    }
    blockquote, q {
      quotes: none;
    }
    blockquote:before, blockquote:after,
    q:before, q:after {
      content: '';
      content: none;
    }
    table {
      border-collapse: collapse;
      border-spacing: 0;
    }
  4. Наш файл main.css начинает принимать форму, так что подключим его к файлу index.html. Откройте index.html в текстовом редакторе и добавьте элемент <link> в <head>, сразу после элемента <title>.
  5. Поскольку мы указываем на стили через элемент <link> добавьте атрибут rel со значением stylesheet.
  6. Мы также включим ссылку на наш файл main.css используя атрибут href. Помните, наш файл main.css сохранён в папке stylesheets, который находится внутри папки assets. Таким образом, значение атрибута href, который является путём к нашему файлу main.css, должно быть assets/stylesheets/main.css.

    <head>
      <meta charset="utf-8">
      <title>Styles Conference</title>
      <link rel="stylesheet" href="assets/stylesheets/main.css">
    </head>

Время для проверки нашей работы и просмотра, как уживаются вместе наши HTML и CSS. Открытие файла index.html (или обновление страницы, если она уже открыта) в браузере должно показать немного другой результат, чем раньше.

Наш сайт Styles Conference со сбросом CSS

Рис. 1.04. Наш сайт Styles Conference со сбросом CSS

Демонстрация и исходный код

Ниже вы можете просмотреть сайт Styles Conference в его нынешнем состоянии, а также скачать исходный код сайта на данный момент.

Просмотр сайта Styles Conference или Скачать исходный код

Резюме

Итак, всё хорошо! Мы сделали несколько больших шагов в этом уроке.

Подумать только, теперь вы знаете основы HTML и CSS. Поскольку мы продолжим и вы потратите больше времени на написание HTML и CSS, вам станет гораздо комфортнее работать с этими двумя языками.

Напомним, что мы рассмотрели следующее:

  • Разница между HTML и CSS.
  • Знакомство с элементами HTML, тегами и атрибутами.
  • Настройка структуры вашей первой веб-страницы.
  • Знакомство с селекторами CSS, свойствами и значениями.
  • Работа с селекторами CSS.
  • Указатель на CSS из HTML.
  • Важность CSS сброса.

Теперь давайте поближе рассмотрим HTML и познакомимся немного с семантикой.

Ресурсы и ссылки

  • Common HTML terms via Scripting Master
  • CSS Terms & Definitions via Impressive Webs
  • CSS Tools: Reset CSS via Eric Meyer
  • Normalize.css via Nicolas Gallagher
  • An Intro to HTML & CSS via Shay Howe

См. также

Последнее изменение: 11.08.2018

Понравилась статья? Поделить с друзьями:
  • Как написать историю своей фамилии 3 класс
  • Как написать историю своей семьи 5 класс
  • Как написать историю своего рода
  • Как написать историю своего персонажа
  • Как написать историю развития ребенка