Содержание
Учебник HTML5
260
Web-программирование — Учебник HTML5
С первого взгляда можно предположить, что HTML5 — это пятая версия языка HTML для создания веб-страниц. Но в действительности все не так просто.
HTML5 — неформал. Его придумала группа вольнодумцев, которые не входили в группу, отвечавшую за официальный стандарт HTML. В стандарте HTML5 разрешаются методы написания страниц, которые были запрещены десять лет тому назад. В нем подробно изложены инструкции браузерам, как обрабатывать ошибки в разметке страниц, чтобы попытаться отобразить эти страницы, вместо того чтобы сразу же забраковывать их.
Он, наконец, позволяет воспроизводить видео, не прибегая к помощи модулей расширения браузера, таких как, например, Flash. Также в этом стандарте вводится лавина функциональностей, движимых JavaScript, которые могут придать веб-страницам определенные расширенные, интерактивные возможности, встречаемые в программном обеспечении для настольных компьютеров.
Разобраться в HTML5 — задача не из легких. Самой большой проблемой является то обстоятельство, что термин «HTML5» используется для обозначения свыше дюжины отдельных стандартов. (Как мы узнаем, эта ситуация является результатом эволюции HTML5, который начинался как единый стандарт, но впоследствии был разделен на более управляемые части.)
В действительности, термин «HTML5» сейчас означает «HTML5 и связанные стандарты» и, в еще более широком понимании, «следующее поколение технологий разработки веб-страниц». Вот такую версию HTML5 мы и будем рассматривать: все от базового языка HTML5 до новых возможностей, сброшенных в одну кучу с HTML5, хотя они никогда и не были частью этого стандарта.
Теоретический материал:
1. Введение в HTML5
2. Веб-формы
3. Аудио и видео
4. Canvas
5. Web Storage API и File API
6. Автономные приложения
7. Взаимодействие с веб-сервером
8. Geolocation API, Web Workers и другие средства
Синтаксис HTML5 | htmlbook.ru
HTML5 возвращает нас к стилю десятилетней давности, когда практиковалось не закрывать некоторые теги, писать значения без кавычек и по желанию набирать теги в верхнем или нижнем регистре. Такая вольность не означает, что любые правила должны игнорироваться, по-прежнему следует соблюдать корректную вложенность тегов и вставлять обязательные элементы. Отход от жёсткого синтаксиса XHTML позволяет сосредоточиться на содержании сайта, а не на соблюдении пустых формальностей, большинство из которых вызывает раздражение из-за своего несущественного значения и ненужности.
Элементы HTML
Базовым кирпичиком веб-страницы выступает элемент. Они могут делиться по разным критериям, например, по типу или своему назначению.
Элементы по типу
Пустые элементы
К ним относятся элементы, у которых нет закрывающего тега: <area>, <base>, <br>, <col>, <command>, <embed>, <hr>, <img>, <input>, <keygen>, <link>, <meta>, <param>, <source>, <track>, <wbr>.
Необрабатываемые текстовые элементы
Предназначены для вывода скриптов или стилей, имеющих синтаксис отличный от HTML: <script>, <style>.
RCDATA
Эти элементы могут содержать любой текст или спецсимволы, за исключением нестандартных спецсимволов, которые называются сомнительным амперсандом, например: &copi; или &T. К этой группе элементов относятся <textarea> и <title>.
Инородные элементы
Элементы, относящиеся к MathML или SVG.
Обычные элементы
Все остальные элементы, которые не входят в предыдущие группы.
Элементы по назначению
Корневой элемент
Элемент <html>.
Метаданные документа
<head>, а также элементы, которые располагаются внутри него.
Скрипты
Скрипты позволяют добавлять интерактивности на веб-страницу, в эту группу входят элементы, управляющие скриптами.
Структурные элементы
Элементы, управляющие основными разделами веб-страницы, вроде <body>, <section>, <nav>, <article>, <aside> и др.
Группирование контента
Элементы, обрамляющие текст, списки, изображения.
Текст
Элементы, изменяющие вид текста, например, делающие его жирным или курсивным, а также выделяющие текст по смыслу — аббревиатура, цитата, переменная, код и т.д.
Рецензирование
Элементы <ins> и <del> показывающие редактирования в документе.
Внедряемый контент
Элементы, вставляемые на страницу в виде разных объектов — изображения, видео, аудио и др.
Табличные данные
Элементы для создания и управления видом таблиц.
Формы
Формы являются одним из важных элементов любого сайта и предназначены для обмена данными между пользователем и сервером. В эту группу входят элементы для создания формы и её полей.
Интерактивные элементы
Специальные виджеты, с помощью которых пользователь может получать дополнительную информацию или управление.
Ссылки
Элементы <a> и <area>.
Подобное группирование условно и может принимать другой вид, потому что одни и те же элементы могут принадлежать разным группам.
Теги
Для обозначения начала и конца элемента применяются теги. Внутри тегов могут быть атрибуты со своими значениями, расширяющими возможности тегов, а также содержимое (рис. 1).
Рис. 1. Тег <a> с атрибутом href
Закрывающий тег похож на открывающий, но содержит слэш (/) внутри угловых скобок.
Пустые элементы не имеют закрывающего тега и содержимого (рис. 2).
Рис. 2. Пустой тег <img>
Атрибуты тегов расширяют возможности самих тегов и позволяют гибко управлять различными настройками отображения элементов веб-страницы. Общее количество атрибутов достаточно велико, но их значения, как правило, можно сгруппировать по разным типам, например, задающих цвет, размер, адрес и др. Например, элемент <img> добавляет на веб-страницу изображение, при этом адрес графического файла мы указываем через атрибут src.
Доктайп
<!DOCTYPE> предназначен для указания типа текущего документа — DTD (document type definition, описание типа документа) для того, чтобы браузер понимал, с какой версией HTML он имеет дело. Если доктайп не указан, браузеры переходят в режим совместимости, в котором не работают многие возможности HTML5, а также возникают ошибки с отображением документа.
Доктайп не чувствителен к регистру и содержит всего два слова:
<!DOCTYPE html>
Это ключевой элемент и обычно он располагается в первой строке кода.
Комментарии
Некоторый текст можно спрятать от показа в браузере, сделав его комментарием. Хотя такой текст пользователь не увидит, он все равно будет передаваться в документе, так что, посмотрев исходный код, можно обнаружить скрытые заметки.
Комментарии нужны для внесения в код своих записей, не влияющих на вид страницы. Начинаются они тегом <!— и заканчиваются тегом —>. Все, что находится между этими тегами отображаться на веб-странице не будет.
Необязательные теги
Если какой-то тег не указан, это не означает, что он не представлен вообще. Существуют определённые правила, позволяющие не писать некоторые теги. В табл. 1 представлены теги, которые можно не указывать и условие, при котором это происходит.
Тег | Условие |
---|---|
<html> | |
</html> | |
<head> | Если внутри имеются другие элементы. |
</head> | |
<body> | Если пустой, а также содержит что-то кроме пробела или комментария. |
</body> | |
</li> | Если после элемента следует <li> или он последний у родителя. |
</dt> | Если после элемента следует <dt> или <dd>. |
</dd> | Если после элемента следует <dd>, <dt> или он последний у родителя. |
</p> | Если после элемента следует <address>, <article>, <aside>, <blockquote>, <dir>, <div>, <dl>, <fieldset>, <footer>, <form>, <h2>,…,<h6>, <header>, <hgroup>, <hr>, <menu>, <nav>, <ol>, <p>, <pre>, <section>, <table>, <ul>. |
</rt> | Если после элемента следует <rt> или <rp>. |
</rp> | Если после элемента следует <rt> или <rp>. |
</optgroup> | Если после элемента следует <optgroup> или он последний у родителя. |
</option> | Если после элемента следует <option>, <optgroup> или он последний у родителя. |
<colgroup> | Если первым внутри идёт <col> и не следует перед другим элементом <colgroup>. |
</colgroup> | |
</thead> | Если после элемента следует <tbody> или <tfoot>. |
<tbody> | Если первым внутри идёт <tr> и не следует перед <tbody>, <thead> или <tfoot> у которых опущен закрывающий тег. |
</tbody> | Если после элемента следует <tbody> или <tfoot> или он последний у родителя. |
</tfoot> | Если после элемента следует <tbody> или он последний у родителя. |
</tr> | Если после элемента следует <tr> или он последний у родителя. |
</td> | Если после элемента следует <td> или <th> или он последний у родителя. |
</th> | Если после элемента следует <td> или <th> или он последний у родителя. |
Если открывающий тег содержит один или несколько атрибутов, то тег должен указываться обязательно.
Из-за того, что многие теги можно не указывать, т.к. они подразумеваются по умолчанию, любой документ сводится к следующим частям.
- Необязательная метка порядка байтов (byte order mark, BOM).
- <!DOCTYPE html>.
- <title>.
До и после доктайпа разрешается вставлять любое количество пробелов или комментариев. Таким образом, доктайп не обязательно должен располагаться в первой строке кода.
В примере 1 показан минимальный код HTML для вывода традиционного приветствия.
Пример 1. Минимальный HTML
HTML5IECrOpSaFx
<!DOCTYPE html>
<title> </title>
Привет, мир!
Метка порядка байтов состоит из кода символа U+FEFF в начале документа, где она используется для определения кодировки. Рекомендуется убирать этот символ, поскольку его наличие приводит к ошибкам отображения документа в некоторых браузерах. Для этого можно использовать редактор Notepad++, в меню «Кодировки» выбрать пункт «Кодировать в UTF-8 (без BOM)» (рис. 3).
Рис. 3. Выбор кодировки
Полезные ссылки
Значения атрибутов | htmlbook.ru
Каждый атрибут тега содержит значение определённого типа и формата написания. Различают следующие типы значений: ключевые слова, числа, дата и время, цвета, URL.
Для всех атрибутов характерны следующие принципы.
- Если значение явно не указано, применяется значение по умолчанию или атрибут не учитывается.
- Если указано недопустимое значение атрибута, например, вместо числа добавлен текст, то значение такого атрибута игнорируется и используется значение по умолчанию.
Не все атрибуты имеют значение по умолчанию, в случае отсутствия такого атрибута или при его некорректном значении, атрибут пропускается.
Ключевые слова
Это заданный фиксированный набор определённых слов, которые допустимо подставлять в качестве значений атрибутов. Ключевые слова не чувствительны к регистру и их можно писать любым удобным способом. Так, значения handheld, Handheld и HANDHELD по своему действию одинаковы.
В примере 1 показано создание формы, которая отправляется на сервер методом POST с помощью значения post атрибута method.
Пример 1. Метод отправки формы
HTML5IECrOpSaFx
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Ключевые слова</title>
</head>
<body>
<form method="post">
<input name="user" placeholder="Введите имя">
<input type="submit" value="Отправить">
</form>
</body>
</html>
В данном примере в элементе <form> используется атрибут method со значением post. Если этот атрибут не указать, то будет подставляться значение get, применяемое по умолчанию. Для первого элемента <input> атрибут type не задан, поскольку он подставляется автоматически со значением text, а для второго <input> атрибут type уже указан для создания кнопки отправки формы.
Числа
К числам относятся: положительные целые числа, содержащих одну или несколько цифр от 0 до 9; отрицательные числа; а также вещественные или дробные (например, 0.5).
Положительные целые числа
Активно применяются когда надо задать количество колонок, ограничить размер поля формы и количество вводимых символов, установить ширину и высоту рисунка и др. В примере 2 показано создание нумерованного списка, начинающегося с 11.
Пример 2. Использование целого числа
HTML5IECrOpSaFx
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Целое число</title>
</head>
<body>
<ol start="11">
<li>Чебурашка</li>
<li>Крокодил Гена</li>
<li>Шапокляк</li>
</ol>
</body>
</html>
Отрицательные целые числа
Отрицательные целые числа применяются реже по сравнению с положительными по понятным причинам. С их помощью нельзя задать перечисление или ширину, хотя бы потому, что рисунков с отрицательной шириной не бывает. Так что в HTML такие числа применяются в основном в формах для ограничения ввода.
Для указания отрицательного числа перед ним ставится знак минус (-) без пробелов (например: -15). В примере 3 показано использование отрицательных значений.
Пример 3. Число со знаком минус
HTML5IECrOpSaFx
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Отрицательные числа</title>
</head>
<body>
<form>
<p>Введите число с шагом 2
<input type="number" min="-50" max="50" step="2" value="-10"></p>
</form>
</body>
</html>
Браузер Firefox не поддерживает тип number и вместо него отображает обычное текстовое поле.
Вещественные числа
Сюда входят десятичные дроби, для разделения целой и дробной части используется точка. Число может быть и отрицательным, тогда перед ним ставится знак минус (-).
Примеры вещественных чисел: -0.84, 3.1415926, 1.717.
Есть и вторая форма записи вещественных чисел, когда после числа добавляется латинский символ e или E, а затем число означающее степень, причём оно может быть и со знаком минус. Это аналогично тому, что число перед E умножают на 10 в степени, указанной после символа E. Вот несколько примеров для наглядности.
3.1415926e5 = 3.1415926 × 105 = 3.1415926 × 100000 = 314159.26
5e-2 = 5 × 10-2 = 5 / 100 = 0.05
78e2 = 78 × 102 = 7800
Браузер Opera некорректно работает с вещественными числами, в которых есть заглавная буква E, так что вставляйте строчную букву e.
Дата и время
Используется для указания года, месяца и года или полной даты, а также времени.
Дата и время задается в особом формате, пример которого показан в табл. 1.
Значение | Формат | Пример |
---|---|---|
Год | ГГГГ | 2014 |
Месяц и год | ГГГГ-ММ | 2014-12 |
Полная дата | ГГГГ-ММ-ДД | 2014-12-23 |
Дата и время с минутами | ГГГГ-ММ-ДДTчч:мм | 2014-07-24T18:18 |
Дата и время с секундами | ГГГГ-ММ-ДДTчч:мм:сс | 2014-07-24T18:18:18 |
Дата и время с часовым поясом | ГГГГ-ММ-ДДTчч:мм:сс±чч:мм | 2014-07-24T18:18:18+04:00 |
Для каждой единицы существует своя заданная форма и ограничения.
- Год — задается четырьмя цифрами (1860).
- Месяц — две цифры (01 — январь, 02 — февраль, 12 — декабрь).
- День — две цифры от 01 до 31.
- Час — две цифры от 00 до 23.
- Минуты — две цифры от 00 до 59.
- Секунды — две цифры от 00 до 59.
- Часовой пояс — часы и минуты с указанием знака плюс или минус.
Дата и время разделяются между собой заглавной латинской буквой T. Часовой пояс при необходимости пишется после времени со знаком плюс или минус. К примеру, для Москвы часовой пояс будет +03:00.
Цвета
Значение цвета представляет собой три числа в диапазоне от 0 до 255 в шестнадцатеричном представлении описывающие красную, зелёную и синюю компоненту в цветовом пространстве sRGB. Каждое значение цвета должно начинаться с символа решётки (#), после которого могут идти следующие шесть цифр или букв в любом регистре: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Другие символы не допускаются. Подробнее о цвете в HTML смотрите здесь.
URL
URL — это адрес документа или файл. Содержит в себе несколько частей, не все из которых являются обязательными. Это протокол, имя хоста, порт, путь, строка запроса и хэш. В табл. 2 перечислены параметры URL с их описанием.
Параметр | Описание | Пример |
---|---|---|
протокол | Сетевой протокол. Для гипертекстовых документов это HTTP. | http:// https:// |
имя хоста | Адрес сайта. | htmlbook.ru www.google.com |
порт | Системный ресурс, выделяемый веб-серверу. По умолчанию имеет значение 80, его можно не указывать. | :80 |
путь | Путь к документу на сайте. | /open/doc.html |
строка запроса | Строка, в которой передаются параметры GET-запроса со значениями. Пишется после знака вопроса (?). | ?name=vasya |
хэш | Строка после знака решётки (#). | #top |
В зависимости от наличия тех или иных параметров различают абсолютные и относительные адреса. Абсолютный адрес содержит порт и имя хоста, относительный — путь к документу. Строка запроса и хэш допустимо добавлять к адресу любого типа. Если URL содержит только хэш, то в текущем документе произойдёт переход к элементу, у которого задано. Решётка в атрибуте id в таком случае не пишется.
На URL влияет элемент <base> с атрибутом href, адрес документа с его учётом может оказаться другим, чем тот, что задан явно.
Вопросы для проверки
1. Коля написал ошибочное число в следующем коде, но валидатор не выдал никакой ошибки. Почему?
<input value=»36FG»>
2. Даша использовала число 12g5 в строке
<input type=»number» value=»12g5″>
Но браузер Chrome не показал никакого результата. Почему?
3. Сколько способов есть в HTML чтобы задать оранжевый цвет?
4. Адрес ссылки имеет следующий код. Но на странице нет элемента с идентификатором local. Что произойдёт, если щёлкнуть по такой ссылке?
<a href=»#local»>ссылка</a>
Глобальные атрибуты | htmlbook.ru
Наряду с атрибутами, характерными для конкретных тегов, в HTML5 существует и ряд атрибутов, который можно добавлять к любым тегам, поэтому входящие в эту группу атрибуты называются глобальными или универсальными. Ниже они перечислены с кратким описанием. По ссылке доступно подробное описание атрибута.
accesskey
Атрибут accesskey позволяет активировать ссылку с помощью некоторого сочетания клавиш с заданной в коде ссылки буквой или цифрой. Браузеры при этом используют различные комбинации клавиш. Например, для accesskey=»s» работают следующие сочетания.
- Internet Explorer: Alt + S
- Chrome: Alt + S
- Opera: Shift + Esc, S
- Safari: Alt + S
- Firefox: Shift + Alt + S
class
Задаёт стилевой класс, который позволяет связать определенный тег со стилевым оформлением. В значении допускается указывать сразу несколько классов, разделяя их между собой пробелом.
contenteditable
Сообщает, что элемент доступен для редактирования пользователем — допускается удалять текст, и вводить новый. Также работают стандартные команды вроде отмены, вставки текста из буфера и др.
contextmenu
Устанавливает контекстное меню для элемента. В качестве значения указывается идентификатор меню созданного с помощью тега <menu>.
dir
Задает направление и отображение текста — слева направо или справа налево. Браузеры обычно самостоятельно различают направление текста, если он задан в кодировке Юникод, но с помощью атрибута dir можно указать, в каком направлении отображать текст. Для арабских и еврейских символов приоритетным является направление, заложенное в Юникод, поэтому на них атрибут dir действовать не будет.
draggable
Позволяет перетаскивать элемент для дальнейшего манипулирования с ним.
dropzone
Указывает, что делать с перетаскиваемым элементом.
hidden
Скрывает содержимое элемента от просмотра. Такой элемент не отображается на странице, но доступен через скрипты.
id
Задаёт идентификатор — уникальное имя элемента, которое используется для изменения его стиля и обращения к нему через скрипты. Идентификатор в коде документа должен быть в единственном экземпляре, иными словами, встречаться только один раз.
itemid, itemprop, itemref, itemscope, itemtype
Группа атрибутов, предназначенная для работы с микроданными.
lang
Текст документа может быть набран как на одном языке, так и содержать вставки на других языках, которые могут различаться по своим правилам оформления текста. Например, для русского, немецкого и английского языка характерны разные кавычки, в которые берется цитата. Чтобы указать язык, на котором написан текст внутри текущего элемента и применяется атрибут lang. Браузер использует его значение для правильного отображения некоторых символов.
spellcheck
Указывает браузеру проверять или нет правописание и грамматику в тексте. Хотя атрибут можно устанавливать практически для всех элементов, результат будет заметен только для полей форм (<input>, <textarea>), а также редактируемых элементов (у них установлен атрибут contenteditable).
style
Применяется для определения стиля элемента с помощью правил CSS.
tabindex
Атрибут tabindex устанавливает порядок получения фокуса при переходе между элементами с помощью клавиши Tab. Переход происходит от меньшего значения к большему, например от 1 к 2, затем к 3 и так далее. При этом строгая последовательность не важна, допускается пропускать какие-то числа и начинать с любой цифры. Если значения tabindex у элементов совпадают, тогда учитывается их порядок появления в коде.
title
Создаёт всплывающую текстовую подсказку, которая появляется при наведении курсора на элемент. Вид такой подсказки зависит от браузера, настроек операционной системы и не может быть изменен с помощью HTML-кода или стилей.
Учебник HTML
HTML расшифровывается как Hyper Text Markup Language, т.е. язык гипертекстовой разметки — основной строительный блок веб-страниц, используется для создания и визуального представления веб-станиц.
Язык HTML добавляет разметку в обычный текст. Гипертекст содержит различные ссылки благодаря которым веб-страницы связываются между собой. С помощью HTML каждый может создавать как статические так и динимические сайты. HTML является языком, описывающим структуру и семантику содержимого веб-документа. Содержимое веб-страницы размечается с помощью тегов, представляющих HTML-элементы. Примерами таких элементов являются <html>, <img>, <div> и так далее. Эти элементы формируют строительные блоки для любого веб-сайта.
HTML был изобретён в 1991 году учёным, Тимом Бёрнсом-Ли (Tim Berners-Lee), и изначально предназначался для обмена документами между учёными различных университетов. Своим изобретением Тим Бёрнс-Ли заложил основы современной сети Internet.
Существует несколько версий HTML. Стандарт языка непрерывно обновляется и дополняется, следствие этого — почти каждый год выходит новая версия HTML. Версия «HTML 2.0» была первым стандартом HTML спецификации, которая была опубликована в 1995 году. HTML 4.01 является основной версией HTML, которая была опубликована в конце 1999 года, и широко используется в настоящее время. Сегодня наиболее популярной становится версия HTML-5, которая является расширением HTML 4.01, и опубликована в 2012 году.
HTML-документ или веб-страница — это простой текстовый документ, содержащий тэги (которые в свою очередь являются обычным текстом, заключенным в угловые скобки <имя тэга>). Веб-страницу можно набрать как в обычном текстовом редакторе (Блокнот, WordPad, Word и т.д.), так и в специализированном, с подсветкой кода (Notepad++, Sublime Text идр.). Документы HTML хранятся в виде файлов с расширением .htm или .html.
Онлайн-примеры в каждом уроке
В процессе изложения материала в каждом уроке будут приводиться примеры, которые помогут вам детально разобраться в каждом коде и, благодаря практике, наслаждаться обучением. С помощью нашего онлайн-редактора HTML, вы можете отредактировать HTML-документ, а затем нажмите в редакторе оранжевую кнопку «Выполнить», которая расположена над левым окном редактора, чтобы увидеть результат. Если вы пользуетесь специализированным HTML-редактором, то, вы можете скопировать пример и посмотреть результаты своего труда в браузере, установленном на вашем компьютере.
Пример HTML:
Попробуй сам
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Заголовок страницы</title>
</head>
<body>
<h2>Это заголовок</h2>
<p>Это параграф.</p>
</body>
</html>
Кликни по кнопке «Попробуй сам» и посмотри как это работает. |
Онлайн-примеры HTML
В учебнике HTML для вас подготовлено более 100 онлайн-примеров, благодаря которым вы легко освоите язык разметки. Лучше один раз увидеть, чем сто раз услышать! Теория плюс практика — залог вашего успеха в освоении HTML.
С помощью онлайн-редактора вы сможете редактировать и анализировать каждый пример в учебнике HTML.
Перейти к онлайн- примерам HTML
Справочник HTML
В справочнике вы найдете полную информацию по любым тегам, атрибутам, событиям, ссылкам, кодам цветов, изображениям и много чего еще.
Перейти к справочнику HTML
Учебники | MDN
Ссылки на этой странице ведут к целому ряду учебных пособий и материалов. Если вы только начинаете учить основы, или же вы уже бывалый веб-разработчик, то здесь вы сможете найти полезные ресурсы для получения передового практического опыта. Эти ресурсы создаются дальновидными компаниями и веб-разработчиками, включают открытые стандарты и лучшие практики для веб-разработки, предоставляют или позволяют переводы под открытой лицензией, такой, как Creative Commons.
Вводный уровень
- Введение в HTML
- Что такое HTML, что он делает, его краткая история, и что представляет собой структура HTML документа. В последующих статьях мы подробнее рассмотрим отдельные части HTML.
- Базовая структура веб-страницы (SitePoint)
- Узнайте как HTML элементы сочетаются в общую картину.
- MDN HTML Element Reference
- Комплексный справочник для HTML элементов, и, как различные браузеры поддерживают их.
- HTML Challenges (Wikiversity)
- Используйте эти задачки, чтобы отточить свои HTML навыки (для примера, «Какой элемент нужно использовать — <h3> или <STRONG>?»), фокусируясь на смысле разметки.
Продвинутый уровень
- Tips for Authoring Fast-Loading HTML Pages
- Оптимизация веб-страниц, для большей адаптивности сайта и снижения нагрузки на веб-сервера и подключение к Интернету
- HTML5 Tutorials (HTML5 Rocks)
- Совершите экскурсию в код, который использует возможности HTML5.
- Semantics in HTML5 (A List Apart)
- Изучите рабочую разметку, обеспечивающую обратную совместимость, расширяемую и поддерживающую будущие изменения (совместимость вперёд).
- Canvas Tutorial
- Узнайте, как рисовать с помощью скриптов, используя элемент
canvas
. - HTML5 Doctor
- Статьи о том, как используется HTML5 прямо сейчас.
- The Joy of HTML5 Audio (Elated)
- Узнайте как использовать HTML аудио элемент для того, чтобы вставлять звуки в ваши веб-страницы. В учебнике представлено много примеров кода.
Javascript учебники
Вводный уровень
- JavaScript First Steps
- JavaScript руководство, написанное как часть MDN Learning Area.
- Codecademy (Codecademy)
- Codecademy это простой способ изучить JavaScript. Он интерактивный, и вы можете делать это вместе с друзьями
- Getting Started with JavaScript
- Что такое JavaScript и как он может пригодиться вам?
- JavaScript Best Practices (WebPlatform.org)
- Узнайте о некоторых из очевидных (и не очень очевидных) лучших практиках для написания кода на JavaScript.
Средний уровень
- A Re-Introduction to JavaScript
- Повторение языка программирования JavaScript для разработчиков среднего уровня.
- Eloquent JavaScript
- Полное руководство по «средним» и «продвинутым» методикам JavaScript.
- Essential JavaScript Design Patterns (Addy Osmani)
- Введение в основы шаблонов проектирования JavaScript.
- The JavaScript Programming Language (YUI Blog)
- Douglas Crockford исследует язык, какой он есть сегодня, и как он пришёл, чтобы быть.
- Introduction to Object-Oriented JavaScript
- Узнайте об ООП в JavaScript.
- Speaking JavaScript (Dr. Axel Rauschmayer)
- Для тех программистов, кто хочет быстро и хорошо выучить JavaScript, а так же для тех, кто хочет углубить свои навыки или же изучить какие-то специфические темы.
Продвинутый уровень
- JavaScript Guide
- Полное, регулярно обновляемое руководство по JavaScript для всех уровней обучения от начального до продвинутого.
- Learning Advanced JavaScript (John Resig)
- Гид по «продвинутому» JavaScript от John Resig.
- Introducing the JavaScript DOM (Elated)
- Что такое Document Object Model, и зачем она нужна? Эта статья даёт вам постепенное введение в эту мощную способность JavaScript.
- An Inconvenient API: The Theory of the DOM (YUI Blog)
- Douglas Crockford объясняет Document Object Model.
- Advanced JavaScript (YUI Blog)
- Douglas Crockford пристально следит за шаблоном кода, который JavaScript программисты могут выбрать в авторстве своих приложений.
- JavaScript Garden
- Документация из самых необычных частей JavaScript
- Which JavaScript Framework? (StackOverflow)
- Советы по выбору основы JavaScript..
- Non-Blocking JavaScript Downloads (YUI Blog)
- Советы по улучшению производительности скачивания страниц, содержащих JavaScript
- JavaScript Patterns
- Шаблоны и антишаблоны проектирования JavaScript, которые охватывают функциональные шаблоны, шаблоны JQuery, шаблоны плагинов JQuery, шаблоны проектирования, основные шаблоны, literal patterns и шаблоны конструирования, шаблоны создания объекта, переиспользуемый шаблонный код, DOM.
- How Browsers Work
- Статья с подробным исследованием, описывающая различные современные браузеры, их движки, рендеринг страниц и пр.
- Exploring ES6 (Dr. Axel Rauschmayer)
- Надёжная и подробная информация об ECMAScript 2015.
- JavaScript Videos (GitHub)
- Видео о JavaScript.
CSS учебники
Вводный уровень
- CSS Getting Started
- Этот учебник познакомит вас с каскадными таблицами стилей (CSS). Он проведёт вас через основные особенности CSS и предложит практические примеры, которые можно попробовать на вашем компьютере.
- CSS Selector Classes (Wikiversity)
- Что такое классы в CSS?
- External CSS (Wikiversity)
- Использование CSS из внешних источников.
- Adding a Touch of Style (W3C)
- Краткое руководство для начинающих по стилизации веб-страниц с помощью CSS.
- Common CSS Questions
- Общие вопросы и ответы для начинающих.
- CSS Selectors
- Введение в CSS селекторы.
Средний уровень
- CSS Reference
- Полный справочник по CSS, с информацией о поддержке в Firefox и других браузерах.
- CSS Challenges (Wikiversity)
- Улучшите ваши навыки CSS, и обратите внимание на то, где вам нужно больше практики.
- Intermediate CSS Concepts (HTML.net)
- Группировка, псевдоклассы и многое другое.
- CSS Positioning 101 (A List Apart)
- Использование позиционирования в соответствии со стандартами, без использования таблиц.
- Progressive Enhancement with CSS (A List Apart)
- Прогрессивное улучшение в веб-страницы с помощью CSS.
- Fluid Grids (A List Apart)
- Дизайн вёрстки, который плавно изменяется вместе с размерами окна, основанный на сетке.
Продвинутый уровень
- Using CSS Transforms
- Как применять поворот, наклон, масштабирование и перемещение при помощи CSS
- CSS Transitions
- CSS переходы, спецификация CSS3 по этой теме, как анимировать изменения стилей в CSS, вместо того, чтобы делать их «сразу».
- Quick Guide to Implement Web Fonts with @font-face (HTML5 Rocks)
- Возможности @font-face в CSS3, создание собственных шрифтов и работа с ними.
- Starting to Write CSS (David Walsh)
- Введение в инструменты и методологии для разработки более краткого, масштабируемого и поддерживаемого CSS.
Учебник HTML5 и CSS for Android
Руководство по HTML5 и CSS3
HTML (HyperText Markup Language) представляет язык разметки гипертекста, используемый преимущественно для создания документов в сети интернет. HTML начал свой путь в начале 90-х годов как примитивный язык для создания веб-страниц, и в настоящий момент уже трудно представить себе интернет без HTML. Подавляющее большинство сайтов так или иначе используют HTML.
В 2014 году официально была завершена работа над новым стандартом — HTML5, который фактически произвел революцию, привнеся в HTML много нового.
Глава 1. Введение в HTML5
Что такое HTML
Элементы и атрибуты
Создание документа
Разновидности синтаксиса
Глава 2. Элементы в HTML5
Элемент head и метаданные веб-страницы
Элементы группировки
Заголовки
Форматирование текста
Работа с изображениями
Списки
Элемент details
Список определений
Таблицы
Ссылки
Элементы figure и figcaption
Фреймы
Глава 3. Работа с формами
Формы
Элементы форм
Кнопки
Текстовые поля
Метки и автофокус
Элементы для ввода чисел
Флажки и переключатели
Элементы для ввода цвета, url, email, телефона
Элементы для ввода даты и времени
Отправка файлов
Список select
Textarea
Валидация форм
Элементы fieldset и legend
Глава 4. Семантическая структура страницы
Элемент article
Элемент section
Элемент nav
Элементы header, footer и address
Элемент aside
Элемент main
Глава 5. Основы CSS3. Селекторы
Введение в стили
Селекторы
Селекторы потомков
Селекторы дочерних элементов
Селекторы элементов одного уровня
Псевдоклассы
Псевдоклассы дочерних элементов
Псевдоклассы форм
Псевдоэлементы
Селекторы атрибутов
Наследование стилей
Каскадность стилей
Глава 6. Основы CSS3. Свойства
Цвет в CSS
Стилизация шрифтов
Внешние шрифты
Высота шрифта
Форматирование текста
Стилизация абзацев
Стилизация списков
Стилизация таблиц
Блочная модель
Внешние отступы
Внутренние отступы
Границы
Размеры элементов. Box-sizing
Фон элемента
Создание тени у элемента
Контуры элементов
Обтекание элементов
Прокрутка элементов
Линейный градиент
Радиальный градиент
Глава 7. Создание макета страницы и верстка
Блочная верстка. Часть 1
Блочная верстка. Часть 2
Вложенные плавающие блоки
Выравнивание столбцов по высоте
Свойство display
Создание панели навигации
Выравнивание плавающих элементов
Создание простейшего макета
Позиционирование
Фиксированное позиционирование
Глава 8. Трансформации, переходы и анимации
Трансформации
Переходы
Анимация
Глава 9. Адаптивный дизайн
Введение в адаптивный дизайн
Метатег Viewport
Media Query в CSS
Глава 10. Мультимедиа
Видео
Аудио
Media API. Управление видео из JavaScript
Глава 11. Canvas
Доступ к canvas и рисование прямоугольников
Настройка рисования
Фоновые изображения
Создание градиента
Рисование текста
Рисование фигур
Рисование изображений
Добавление теней
Редактирование пикселей
Трансформации
Рисование мышью
Глава 12. Flexbox
Что такое Flexbox. Flex Container
Направление flex-direction
flex-wrap
flex-flow. Порядок элементов
Выравнивание элементов. justify-content
Выравнивание элементов. align-items и align-self
Выравнивание строк и столбцов. align-content
Управление элементами. flex-basis, flex-shrink и flex-grow
Многоколоночный дизайн на Flexbox
Макет страницы на Flexbox
Глава 13. Grid Layout
Что такое Grid Layout. Grid Container
Строки и столбцы
Функция repeat и свойство grid
Размеры строк и столбцов
Отступы между столбцами и строками
Позиционирование элементов
Наложение элементов
Направление и порядок элементов
Именованные grid-линии
Именованные grid-линии и функция repeat
Области грида
Макет страницы в Grid Layout
Глава 14. Дополнительные статьи
Переменные в CSS
Создание тем CSS с помощью переменных
HTML Базовый
В этой главе мы покажем несколько основных примеров HTML.
Не беспокойтесь, если мы будем использовать теги, о которых вы еще не знали.
Документы HTML
Все документы HTML должны начинаться с объявления типа документа:
.
Сам документ HTML начинается с
и заканчивается
.
Видимая часть HTML-документа находится между
и
.
Пример
Мой первый заголовок
Мой первый абзац.