Артем Кувалдин: Основы HTML

114
HTML Кувалдин Артем [email protected]

Transcript of Артем Кувалдин: Основы HTML

Page 1: Артем Кувалдин: Основы HTML

HTML

Кувалдин Артем[email protected]

www.princexml.com
Prince - Non-commercial License
This document was created with Prince, a great way of getting web content onto paper.
Page 2: Артем Кувалдин: Основы HTML

История HTML

Page 3: Артем Кувалдин: Основы HTML

1986Международная организация по стандартизации приняла стандарт

"Standard Generalized Markup Language (SGML)".

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

текстов.

3

Page 4: Артем Кувалдин: Основы HTML

1990

Тим Бернерс-Ли

4

Page 5: Артем Кувалдин: Основы HTML

HTMLHyper Text Markup Language

1. HyperText — текст, содержащий узлы перехода между ними

2. Mark—up — это разметка

3. Language — это язык (HTML)

5

Page 6: Артем Кувалдин: Основы HTML

HTMLHTML — это стандартный язык разметки документов в интернете. Язык

интерпретируется браузерами(не только) и отображается в удобной

для человека форме.

6

Page 7: Артем Кувалдин: Основы HTML

HTML• HTML 1.2 — 1993

• HTML 2.0 — 22 сентября 1995 года

• HTML 3.2 — 14 января 1997 года

• HTML 4.0 — 18 декабря 1997 года

• HTML 4.1 — 24 декабря 1999 года

• HTML 5 — … ~ 2014

7

Page 8: Артем Кувалдин: Основы HTML

Есть альтернативы

Page 9: Артем Кувалдин: Основы HTML

XMLXML (eXtensible Markup Language) — расширяемый язык разметки для

хранения структурированных данных.

9

Page 10: Артем Кувалдин: Основы HTML

XHMLXHTML (Extensible Hypertext Markup Language) — семейство языков

разметки веб-страниц на основе XML, повторяющих и расширяющих

возможности HTML 4.

10

Page 11: Артем Кувалдин: Основы HTML

Кто занимаетсяразработкой веб-

стандартов?

Page 12: Артем Кувалдин: Основы HTML

W3CКонсорциум Всемирной паутины (англ. World Wide Web Consortium,

W3C) — организация, разрабатывающая и внедряющая

технологические стандарты для Всемирной паутины.

12

Page 13: Артем Кувалдин: Основы HTML

Задачи W3C• Разработка для Интернета единых принципов и стандартов

(«Рекомендаций», англ. W3C Recommendations), которые затем

внедряются производителями программ и оборудования.

• Сделать сеть доступной для людей с ограниченными возможностями.

• ...

13

Page 14: Артем Кувалдин: Основы HTML

HTML

Page 15: Артем Кувалдин: Основы HTML

Деревня Приветствую тебя, пустынный уголок, приют спокойствия,

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

счастья и забвенья. Я твой — я променял порочный двор Цирцей,

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

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

15

Page 16: Артем Кувалдин: Основы HTML

Деревня

Приветствую тебя, пустынный уголок,

Приют спокойствия, трудов и вдохновенья,

Где льется дней моих невидимый поток

На лоне счастья и забвенья.

Я твой — я променял порочный двор Цирцей,

Носкошные пиры, забавы, заблужденья

На мирный шум дубров, на тишину полей,

На праздность вольную, подругу размышленья.

16

Page 17: Артем Кувалдин: Основы HTML

[начало заголовока] Деревня [конец заголовка]

[начало абзаца] Приветствую тебя, пустынный уголок, [перенос]

Приют спокойствия, трудов и вдохновенья, [перенос]

Где льется дней моих невидимый поток [перенос]

На лоне счастья и забвенья. [конец абзаца]

[начало абзаца]Я твой—я променял порочный двор Цирцей, [перенос]

Носкошные пиры, забавы, заблужденья [перенос]

На мирный шум дубров, на тишину полей, [перенос]

На праздность вольную, подругу размышленья. [конец абзаца]

17

Page 18: Артем Кувалдин: Основы HTML

ТегТег — элемент языка разметки, заключенный между символами < и >.

18

Page 19: Артем Кувалдин: Основы HTML

Теги бывают• Двойные <div> </div>

• Одиночные <input/>

19

Page 20: Артем Кувалдин: Основы HTML

<h2> Деревня </h2>

<p> Приветствую тебя, пустынный уголок, <br/>

Приют спокойствия, трудов и вдохновенья, <br/>

Где льется дней моих невидимый поток <br/>

На лоне счастья и забвенья. </p>

<p> Я твой — я променял порочный двор Цирцей, <br/>

Носкошные пиры, забавы, заблужденья <br/>

На мирный шум дубров, на тишину полей, <br/>

На праздность вольную, подругу размышленья. </p>

20

Page 21: Артем Кувалдин: Основы HTML

Теги регистронезависимы<html>,<HTML> или даже <hTmL> — одинаковые теги.

21

Page 22: Артем Кувалдин: Основы HTML

HTMLВ html теги можно не закрывать.

<p>Большой абзац.</p>

<p>Другой большой абзац.</p>

Крайне не рекомендуется так делать.

01.

02.

22

Page 23: Артем Кувалдин: Основы HTML

Вложенность тегов<i>очень <b> длинный текст </b> очень </i> — Правильно

<i>очень<b> длинный текст </i> очень</b> — Неправильно

<!--Браузер это поймет так:-->

<i>очень<b> длинный текст </b> </i> <b>очень</b>

01.

02.

03.

04.

23

Page 24: Артем Кувалдин: Основы HTML
Page 25: Артем Кувалдин: Основы HTML

Атрибуты тегов<div class="he'a'der"> — в двойных кавычках

<input checked='checked'> — в апострофах

<div class=footers> — без кавычек

<input checked> — одиночные атрибуты

01.

02.

03.

04.

25

Page 26: Артем Кувалдин: Основы HTML

САМОЕ ВАЖНОЕ<!--Комментарий-->

26

Page 27: Артем Кувалдин: Основы HTML

HTML-теги

Page 28: Артем Кувалдин: Основы HTML

Теги верхнего уровня<!DOCTYPE>

<html>

<head>

<!--Информация о странице-->

</head>

<body>

<!--Содержимое страницы-->

</body>

</html>

01.

02.

03.

04.

05.

06.

07.

08.

09.

28

Page 29: Артем Кувалдин: Основы HTML

Теги верхнего уровня<!DOCTYPE — для указания типа документа.

Но о нем немного позже.

29

Page 30: Артем Кувалдин: Основы HTML

Теги верхнего уровня• <html>

• Корневой тег, в который вкладываются все остальные теги страницы.

30

Page 31: Артем Кувалдин: Основы HTML

Теги верхнего уровня• <head>

• Содержит информацию о странице:

• Заголовок

• Подключаемые файлы

• Мета информацию

• <body>

• Визуальное содержимое страницы

31

Page 32: Артем Кувалдин: Основы HTML

Теги внутри <head><title>Заголовок страницы</title>

32

Page 33: Артем Кувалдин: Основы HTML

Мета—теги<meta> — определяет мета-теги, которые используются для хранения

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

33

Page 34: Артем Кувалдин: Основы HTML

Мета—теги<meta http-equiv=" Content-Type "

content=" text/html; charset=utf-8 "/>

<meta http-equiv=" X-UA-Compatible " content=" IE=7 " />

Атрибуты:

• http-equiv — устанавливает HTTP-заголовок

• content — значение атрибута

01.

02.

34

Page 35: Артем Кувалдин: Основы HTML

Мета—теги<meta name=" Keywords "

content=" Екатеринбург, портал, новости, форумы "/>

<meta name=" Description "

content=" Хабрахабр — самое крупное в Рунете.. "/>

• атрибут name — устанавливает модификатор мета-тега

01.

02.

35

Page 36: Артем Кувалдин: Основы HTML

Viewport

36

Page 37: Артем Кувалдин: Основы HTML

Viewport<meta name=" viewport "

content=" width=device-width,

maximum-scale=1,initial-scale=1,user-scalable=no "/>

• width — ширина

• maximum-scale — максимальный масштаб

• initial-scale — начальный масштаб

• user-scalable — изменение масштаба (yes/no)

37

Page 38: Артем Кувалдин: Основы HTML

OpenGraph

38

Page 39: Артем Кувалдин: Основы HTML

OpenGraph<meta property=" og:title "

content=" Попробуйте Яндекс.Диск — новый сервис.. "/>

• og:description — описание

• og:image — превью-картинка

• og:video — видео

• og:url — путь к странице

39

Page 40: Артем Кувалдин: Основы HTML

"Текстовые" теги

Page 41: Артем Кувалдин: Основы HTML

"Текстовые" теги• <p> — paragraph

• Абзац

• По умолчанию отступы сверху и снизу

• <h1>..<h6> — header

• Заголовок: h1, h2, h3, h4, h5, h6

• <br/> — break

• Разрыв строки

41

Page 42: Артем Кувалдин: Основы HTML

ДеревняПриветствую тебя, пустынный уголок,

Приют спокойствия, трудов и вдохновенья,

Где льется дней моих невидимый поток

На лоне счастья и забвенья.

Я твой — я променял порочный двор Цирцей,

Носкошные пиры, забавы, заблужденья

На мирный шум дубров, на тишину полей,

На праздность вольную, подругу размышленья.

42

Page 43: Артем Кувалдин: Основы HTML

<h2> Деревня </h2>

<p> Приветствую тебя, пустынный уголок, <br/>

Приют спокойствия, трудов и вдохновенья, <br/>

Где льется дней моих невидимый поток <br/>

На лоне счастья и забвенья. </p>

<p> Я твой — я променял порочный двор Цирцей, <br/>

Носкошные пиры, забавы, заблужденья <br/>

На мирный шум дубров, на тишину полей, <br/>

На праздность вольную, подругу размышленья. </p>

43

Page 44: Артем Кувалдин: Основы HTML

"Текстовые" теги• <pre> — preformatted

• сохраняет пробелы и разрывы

• <hr> — horizontal rule

• горизонтальная линия

• <b>[bold], <i>[italic], <blockout>, <mark>

• выделение текста

44

Page 45: Артем Кувалдин: Основы HTML

Ссылки

Page 46: Артем Кувалдин: Основы HTML

Ссылки• <a href="..">я ссылка</a> — anchor (якорь)

• атрибут href — задает адрес документа, на который следует перейти

46

Page 47: Артем Кувалдин: Основы HTML

Ссылки• <a href="..">виды ссылок</a>

• [протокол]://ya.ru

• /maps

• navigator

• #name

• ../monkey.zip

• mailto:[email protected]

47

Page 48: Артем Кувалдин: Основы HTML

Хэш-ссылки<a href="#line">Хэш-ссылки</a>

очень много текста

<a name="line">нужная строка</a>

01.

02.

03.

48

Page 49: Артем Кувалдин: Основы HTML

Ссылки• <a href=".." target="..">я ссылка</a>

• атрибут target — имя окна или фрейма, куда браузер будет загружать

документ

• _blank

• _self

• _parent

• _top

49

Page 50: Артем Кувалдин: Основы HTML

Вложенные ссылки<a href="map">Ya <a href="navigator">nd</a> ex</a>

<!--Браузер это поймет так:-->

<a href="map">Ya</a><a href="navigator">nd</a>ex

Yandex

Вкладывать ссылки в ссылки нельзя!

01.

02.

03.

50

Page 51: Артем Кувалдин: Основы HTML

Не огорчайте Леонида Аркадьевича

Не вкладывайте ссылки в ссылки

Page 52: Артем Кувалдин: Основы HTML

Списки

Page 53: Артем Кувалдин: Основы HTML

Маркировaнный список<ul> <!--unordered list-->

<li>первый уровень</li> <!--list item-->

<ul>

<li>второй уровень</li>

<li>второй уровень</li>

</ul>

</ul>

01.

02.

03.

04.

05.

06.

07.

53

Page 54: Артем Кувалдин: Основы HTML

Маркировaнный список• первый уровень

• второй уровень

• второй уровень

• первый уровень

54

Page 55: Артем Кувалдин: Основы HTML

Нумерованный список<ol> <!--order list-->

<li>первый уровень</li>

<ol>

<li>второй уровень</li>

<li>второй уровень</li>

</ol>

</ol>

01.

02.

03.

04.

05.

06.

07.

55

Page 56: Артем Кувалдин: Основы HTML

Нумерованный список1. первый уровень

1. второй уровень

2. второй уровень

3. первый уровень

56

Page 57: Артем Кувалдин: Основы HTML

Список определений<dl> <!--definition list-->

<dt>HTML-документ</dt> <!--definition term-->

<dd>Обычный текстовый файл, который может содержать в

себе текст, теги и стили. Изображения и другие объекты

хранятся отдельно.</dd> <!--definition description-->

</dl>

01.

02.

03.

04.

57

Page 58: Артем Кувалдин: Основы HTML

Список определенийHTML-документ

Обычный текстовый файл, который может содержать в себе текст,

теги и стили. Изображения и другие объекты хранятся отдельно.

58

Page 59: Артем Кувалдин: Основы HTML

Таблицы

Page 60: Артем Кувалдин: Основы HTML

Таблицы<table>

<thead><th></th> <th></th> <th></th></thead>

<tbody><td></td> <td></td> <td></td>

<td></td> <td></td> <td></td></tbody>

<tfoot><td></td> <td></td> <td></td></tfoot>

</table>

60

Page 61: Артем Кувалдин: Основы HTML

Таблицы<table>

<thead><th></th></thead>

<tfoot><td>..</td></tfoot>

<tbody>

<tr><td>..</td></tr>

<tr><td>..</td></tr>

</tbody>

</table>

01.

02.

03.

04.

05.

06.

07.

08.

61

Page 62: Артем Кувалдин: Основы HTML

Таблицы<table>

<td></td> <td></td><td rowspan=2></td>

<td colspan=2></td>

<td></td> <td></td> <td></td>

</table>

62

Page 63: Артем Кувалдин: Основы HTML

Таблицы<table>

<tr><td rowspan=2></td><td></td><td></td></tr>

<tr> <td></td> <td colspan="2"></td> <td></td> </tr>

<tr><td></td><td></td><td></td></tr>

</table>

01.

02.

03.

04.

05.

63

Page 64: Артем Кувалдин: Основы HTML

Замещаемыеэлементы

Page 65: Артем Кувалдин: Основы HTML

Замещаемые элементы<img width="100" height="200" src="/cat.png" alt="котик">

• атрибуты width,height — ширина или высота задается в пикселах

• атрибут src — url картинки

• атрибут alt — альтернативный текст, который выводится, если

изображение не загрузилось

65

Page 66: Артем Кувалдин: Основы HTML

Замещаемые элементы<img src="/cat.png" alt="котик">

66

Page 67: Артем Кувалдин: Основы HTML

Замещаемые элементы<img height="400" src="/cat.png" alt="котик">

67

Page 68: Артем Кувалдин: Основы HTML

Замещаемые элементы<img height="400" width="150" src="/cat.png" alt="котик">

68

Page 69: Артем Кувалдин: Основы HTML

Аудио и видео<audio><source src="music.mp3"></audio>

• autoplay — проигрывание при загрузке страницы

• controls — панель управления плеером

• loop — автоповтор

• preload — загрузка файла вместе с загрузкой страницы

• src — путь до трека

69

Page 70: Артем Кувалдин: Основы HTML

Аудио и видео<video height="300" poster="pictures/poster.jpg"><source src="pictures/

film.mp4"></video>

70

Page 71: Артем Кувалдин: Основы HTML

Замещаемые элементы<progress value="30" max="100"></progress>

71

Page 72: Артем Кувалдин: Основы HTML

Замещаемые элементы<canvas width="200" height="100"></canvas>

72

Page 73: Артем Кувалдин: Основы HTML

Формы

Page 74: Артем Кувалдин: Основы HTML

Формы

74

Page 75: Артем Кувалдин: Основы HTML

Формы<input type=".." value=".." name=".."/>

• text —поле для ввода

• password —

• checkbox —✓ чай кофе танец

• radio —• чай кофе

• button —я кнопка

• file — Browse...

• submit/reset —Submit /Reset

75

Page 76: Артем Кувалдин: Основы HTML

Формы в HTML5• color —

• date —

• email —

• url —

• number —

• range —

• search —

• month —

76

Page 77: Артем Кувалдин: Основы HTML

Другие элементы форм• <keygen name="security"></keygen>

• <textarea>много текста</textarea>много текста

• <select><option>Чебурашка</option>..</select>Чебурашка

77

Page 78: Артем Кувалдин: Основы HTML

Атрибуты формы• value — значение

• name — название поля

• size — ширина поля в количсте символов

• checked = “checked" (radio, checkbox)

• selected = “selected" (option)

• tabindex — порядок получения фокуса

• required — обязательно заполнить (HTML5)

• multiple — множественная загрузка файлов(HTML5)

78

Page 79: Артем Кувалдин: Основы HTML

Формы<form method=".." action="example/handler.php">..</form>

• method

• GET — передает данные в урле

• POST — в запросе

79

Page 80: Артем Кувалдин: Основы HTML

GET• Передача небольших текстовых данных на сервер (например, поиск

по сайту)

• http://yandex.ru/

yandsearch?text=%D1%8F%D0%BD%D0%B4%D0%B5%D0%BA%D1%81&clid=1955451&lr=54

80

Page 81: Артем Кувалдин: Основы HTML

POST• Отправка комментариев, паролей

• Пересылка файлов (фотографий, архивов, программ и др.)

81

Page 82: Артем Кувалдин: Основы HTML

Формы<form action="/" method="GET">

<input type="text" name="text" value="текст">

<input type="radio" name="drink" checked>

<input type="radio" name="drink">

<input type="checkbox" name="tea" checked>

<input type="checkbox" name="coffee" checked>

</form>

01.

02.

03.

04.

05.

06.

07.

82

Page 83: Артем Кувалдин: Основы HTML

Формы

inner text

• чай кофе

✓ чай ✓ кофе

Submit

?text=inner%20text&drink=on&tea=on&coffee=on

83

Page 84: Артем Кувалдин: Основы HTML

Фреймы

Page 85: Артем Кувалдин: Основы HTML

Фреймы<iframe>Альтернативный текст</iframe>

• src

• width

• height

85

Page 86: Артем Кувалдин: Основы HTML

Фреймы

86

Page 87: Артем Кувалдин: Основы HTML

Блочные истрочныеэлементы

Page 88: Артем Кувалдин: Основы HTML

Блочные и строчные элементыБлочный элемент

• До и после себя генерирует разрыв потока (строки)

Строчные элементы(инлайн)

• Находится внутри строки

• Переносится на следующую строку, если не влазит в текущую

• Ни единого разрыва

88

Page 89: Артем Кувалдин: Основы HTML

Блочные и строчные элементы<div>

• division — блочный элемент

<span>

• инлайн элемент

89

Page 90: Артем Кувалдин: Основы HTML

Блочные и строчные элементыВекторное поле упорядочивает функциональный анализ, что

несомненно приведет нас к истине. Предел последовательности

накладывает действительный функциональный анализ, как и

предполагалось. Интеграл Пуассона стабилизирует бином Ньютона,

дальнейшие выкладки оставим студентам в качестве несложной

домашней работы.

90

Page 91: Артем Кувалдин: Основы HTML

Блочные и строчные элементы<span>Векторное поле упорядочивает функциональный

анализ, что несомненно приведет нас к

истине.</span> Предел последовательности накладывает

действительный функциональный анализ, как и предполагалось.

Интеграл Пуассона стабилизирует бином Ньютона, дальнейшие

выкладки оставим студентам в качестве несложной домашней работы.

91

Page 92: Артем Кувалдин: Основы HTML

Блочные и строчные элементыВекторное поле упорядочивает функциональный анализ, что

несомненно приведет нас к истине. Предел последовательности

накладывает действительный функциональный анализ, как и

предполагалось. Интеграл Пуассона стабилизирует бином Ньютона,

дальнейшие выкладки оставим студентам в качестве несложной

домашней работы.

92

Page 93: Артем Кувалдин: Основы HTML

Блочные и строчные элементы<div>Векторное поле упорядочивает функциональный

анализ, что несомненно приведет нас к истине.</div>

Предел последовательности накладывает действительный

функциональный анализ, как и предполагалось. Интеграл Пуассона

стабилизирует бином Ньютона, дальнейшие выкладки оставим

студентам в качестве несложной домашней работы.

93

Page 94: Артем Кувалдин: Основы HTML

Блочные и строчные элементыВекторное поле упорядочивает функциональный анализ, что

несомненно приведет нас к истине.

Предел последовательности накладывает действительный

функциональный анализ, как и предполагалось. Интеграл Пуассона

стабилизирует бином Ньютона, дальнейшие выкладки оставим

студентам в качестве несложной домашней работы.

94

Page 95: Артем Кувалдин: Основы HTML

Блочные и строчные элементы• Блочные

• <html>, <body>, <div>, <p>, <hr>, <pre>, <blockquote>

• Строчные

• <span>, <a>, <em>, <br>, <del>, <ins>, <i>

95

Page 96: Артем Кувалдин: Основы HTML

Блочные и строчные элементы• Строчные в блочные

• Строчные в строчные

• Блочные в блочные

Блочные в строчные НЕЛЬЗЯ

96

Page 97: Артем Кувалдин: Основы HTML

Блочные и строчные элементы<span> Однажды в студёную

<div>зимнюю пору</div> лошадка... </span>

<span> Однажды в студёную </span>

<div>зимнюю пору</ div> лошадка..

01.

02.

97

Page 98: Артем Кувалдин: Основы HTML

Поток

Page 99: Артем Кувалдин: Основы HTML

ПотокПоток — порядок отображения элементов на странице.

Чем раньше в коде расположен элемент, тем выше он расположен на

странице.

99

Page 100: Артем Кувалдин: Основы HTML

HTML 5

Page 101: Артем Кувалдин: Основы HTML

HTML 5• <aside> — боковая панель в статье

• <article> — независимое, автономное содержание

• <head>

• <footer>

• <section> — главы, колонтитулы и другие разделы документа

• <time datetime="2008-02-14"> — указание даты и времени

• <menu> — отображение списка меню

• <keygen> — шифрование для формы

101

Page 102: Артем Кувалдин: Основы HTML

HTML-entity

Page 103: Артем Кувалдин: Основы HTML
Page 104: Артем Кувалдин: Основы HTML

html-entityСимвол Десятичный код html-код Описание

" &# 34; & qout; Двойная кавычка

' &# 39; & apos; Апостроф

& &# 38; & amp; Амперсанд

< &# 60; & lt; Меньше

> &# 62; & gt; Больше

&# 160; & nbsp; Неразрывный пробел

104

Page 105: Артем Кувалдин: Основы HTML

Валидность

Page 106: Артем Кувалдин: Основы HTML

ВалидностьВалидность — это соответствие стандартам, например, таким как:

1. Все теги закрыты или одиночные

2. Нет блочных тегов внутри строчных

3. У всех картинок указаны размеры

4. ...

106

Page 107: Артем Кувалдин: Основы HTML

Зачем нужнавалидность?

Page 108: Артем Кувалдин: Основы HTML

Чтобы отсечьошибки,

связанные сневалидностью

Page 109: Артем Кувалдин: Основы HTML

Проверка на валидностьhttp://validator.w3.org/

109

Page 110: Артем Кувалдин: Основы HTML

!DOCTYPE

Page 111: Артем Кувалдин: Основы HTML

!DOCTYPE• предназначен для указания типа текущего документа

• <!DOCTYPE [Элемент верхнего уровня] [Публичность]

"[Регистрация]//[Организация]//[Тип] [Имя]//[Язык]" "[URL]">

111

Page 112: Артем Кувалдин: Основы HTML

!DOCTYPE• <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "www.w3.org/

TR/html4/strict.dtd">

• <!DOCTYPE html> <!--html5-->

112

Page 113: Артем Кувалдин: Основы HTML

Ссылки• OpenGraph (http://ogp.me/)

• ViewPort (http://clck.ru/8pPSV)

• HTML-entity (http://clck.ru/8pPSd)

• Справочник тегов (http://htmlbook.ru/html)

• W3C (http://www.w3.org/)

113

Page 114: Артем Кувалдин: Основы HTML

Спасибо!