SlideShare a Scribd company logo
1 of 41
HTML и CSS
Дмитрий Смаль
HTML
1986 – SGML. Логическое описание структуры
1989 – 1991 – Тим Бернерс Ли создал HTML
Для тех. документации. Без мультимедиа
Война браузеров. HTML 1.0 так и не создали
1994 – Создание W3C
1995 – HTML 2.0 объявлен как стандарт
1997 – HTML 3.2, HTML 4.0 (+CSS)
1999 – HTML 4.01
Сейчас – HTML 5
Как это выглядело
HTML
HTML
<!DOCTYPE html>
<html>
<head>
<title>Страница</title>
<meta http-equiv=”Content-Type”
content=”text/html; charset=utf-8”>
<meta name=”description”
content=”Сайт о создании сайтов”>
<link rel=”stylesheet” href=”./style.css”>
<script type=”text/javascript”
src=”./script.js”></script>
</head>
<body id=”the_body”>
<p class=”article”>...</p>
</body>
</html>
HTML
 Произвольный регистр: <BR> == <br>
 Атрибуты без скобок: color=red
 Сокращенные атрибуты: disabled
 Непарные тэги: <p> вместо <p></p>
 Перестановки тэгов: <b><i></b></i>
XHTML
 только нижний регистр тэгов
 атрибуты со скобоками: color=”red”
 атрибуты – без сокращений: disabled=”disabled”
 Тэги всегда парные: <p></p>
 Строгая вложенность: <i><b></b></i>
 id вместо name
 Необходим DOCTYPE
DOCTYPE
Определяет тип разметки содержимого – DTD.
Влияет на отображение страницы браузером.
HTML 4.01
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
DOCTYPE
XHTML 1.0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
strict.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<!DOCTYPE html>
HTML 5
Тэги верхнего уровня
html – обертка
head – заголовок страницы, не отображается
body – тело страницы
Тэги заголовков
<title> - отображается в заголовке окна.
<meta> - информация для user-agentов.
<meta name="description" content="Сайт об HTML и
создании сайтов">
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
<link rel="stylesheet" href="./style.css"> - загрузка
дополнительных ресурсов
<script src="./jquery.js"></script> - загрузка скриптов
Блочные тэги
<h1> - <h6> - различные уровни заголовков
<p> - разбиение текста на параграфы
<hr> - горизонтальная линия
<pre> - блок преформатированного кода, например
исходный код программы
<blockquote> - цитирование длинного блока текста
<div> - абстрактный блочный контейнер
Пример: h3 и p
Строчные тэги
<a> - гиперссылки
<em> <i> - акцентирование
<strong><b> - выделение
<img src=”..”> - вставка изображений
<sub> - нижний индекс
<sup> - верхний индекс
<span> - абстрактный строчный контейнер
Списки в HTML
<ol>, <ul>, <li> - маркированые списки
<ul>
<li>one</li>
<li>two</li>
</ul>
<dl>
<dt>HTML</dt><dd>язык разметки</dd>
<dt>CSS</dt><dd>язык описания стилей</dd>
</dl>
<dl>, <dt>, <dd> - списки определений
Таблицы в HTML
<table border=”1”>
<caption>квартальный отчет</caption>
<thead>
<tr>
<td>дата</td>
<td colspan=”2”>доход</td>
</tr>
</thead>
<tbody>
<tr>
<th rowspan=”2”>2011-01-01</th>
<td>100500</td>
<td>33</td>
</tr>
<tr>
<td>100</td>
<td>500</td>
</tr>
</tbody>
</table>
Пример таблицы в HTML
Гиперссылки
Ссылки:
<a href=”URL” target=”_blank” rel=”nofollow”>
<img src=”nice.jpg”>
</a>
Поведение браузера зависит от протокола URL.
http(s), ftp – переход по ссылке
mailto – запуск почтовой программы
javascript – запуст JS скрипта, указанного в URL
Якоря: <a name=”chapter1”>Глава 1</a>
Формы
<form method=”post”
action=”/add/”
enctype="multipart/form-data”
target=”frame3”
>
<input name=”image” type=”file”>
<input name=”id” type=”hidden” value=”3”>
<input name=”nick” type=”text”>
<input type=”submit” value=”Отправить”>
<button>Все равно отправить</button>
</form>
Элементы управления
<input> - текстовое поле, checkbox, radiobutton, скрытое
поле, ввод пароля, выбор файла, кнопка отправки.
<select>, <option> - выпадающий селектор,
множественный выбор ( multiple )
<textarea> - многострочное текстовое поле.
Элементы управления
HTML Frames
Важно: DOCTYPE, скрывается URL и title, плохо
поддерживается поисковыми ботами.
<frameset rows="*" cols="80,*">
<frame src="frame1.html" name="Фрейм 1">
<frameset rows="80,*">
<frame src="frame2.html" name="Фрейм 2">
<frame src="frame3.html" name="Фрейм 3">
</frameset>
</frameset>
CSS
CSS
Как описать оформление страницы ?
 XML – логическая разметка данных
 HTML – набор тэгов + семантика + минимальные
возможности стилизации
 <em>, <strong>, <font> - неудобно.
Решение:
Отделить оформление от структуры – использовать
отдельный язык для стилей.
Основы синтаксиса CSS
/* some real css */
.mid-play {
padding:13px 0px 0px 13px;
}
p.inner-play a {
color:#3c3c3c;
text-decoration: underline;
}
.big-top {
background-image:url(/img/pc/220_130_top.gif);
}
/* комментарии */
cелектор { имя_стиля1: значение1; … }
Какие бывают стили ?
width, height – размеры элемента
margin, padding – границы и отступы
display, visibility – режим отображения
top, left, right, bottom – расположение
background – фон элемента
font – управление шрифтом
text-align – выравнивание текста
И т.д: http://htmlbook.ru/css
Базовые селекторы
Универсальный селектор
* { margin: 0px; padding: 0px; border: 0px; }
Имена тэгов
p { margin-top: 10px; }
Имена классов (с точки)
.btn { border: solid 1px gray; }
id тэгов (с решетки)
#userpic { padding: 10px }
Сложные селекторы
контекстные (вложенные)
div.article a { text-decoration: underline }
дочерние (вложенность = 1 уровень)
a > img { border: 2px }
соседние
h2.sic + p { margin-left: 30px }
группировка
h1, h2, h3, h4, h5 { color: red }
Псевдоклассы
a:visited – посещенная ссылка
a:link – непосещенная ссылка
div:hover – элемент при наведении мыши
input:focus – элемент при полчении фокуса
li:first-child – выбирает первого потомка среди
множества элементов
* One
* Two
* Three
Псевдоэлементы
Для примера:
.nickname:first-letter {color: white}
p:first-line {color: red}
Для добра:
.userpic:before {
content: ''; display: block;
width: 100px; height: 5px;
background-color: gray;
}
Наследование
Перенос стилей на вложенные элементы
body { color: darkgray; font-family: Arial; }
p { font-size: 110% }
<body>
<p> Привет, <a href=”/”>Мир</a> </p>
</body>
Не все стили наследуются !
Где могут определить ?
 Стили браузера
 Стили пользователя
 Стили автора
Во внешнем файле
<link rel="stylesheet" href="/style.css">
В html документе
<style></style>
Встроенные в элемент
<div style=”display: none”></div>
Приоритеты стилей
1) Специфичность – вычисление баллов
id – 100
классы и псевдоклассы – 10
тэги и псевдо элеметы – 1
ul.info ol + li 13 баллов→
li.red.level 21 балл→
2) Встроенный стиль: специфичность = 1000
3) Расположение в коде: последний стиль
4) .inone { display: none !important }
Типы элементов
display: none – элемент невидим, не занимает места (vs
visibility: hidden)
display: block – элемент занимает максимальную ширину,
начинается с новой строки, учитывает width, height. div,
h1-h6, p – блочные.
display: inline – элемент занимает минимальную ширину,
и не прерывает строку, игнорирует width, height. span,
img, a – строчные.
display: table-cell – как ячейка таблицы
DIV vs SPAN
<div class="t">ONE</div>
<div class="t">2</div>
<span class="t">ONE</span>
<span class="t">2</span>
<style>
.t {
width: 200px; height: 100px;
background: red; color: white;
margin: 5px; padding: 4px;
}
</style>
float & clear
float – задает правила обтекания элемента
clear – отменяет обтекание начиная с элемента
float & clear
<div class="outer">
<div class="sqr fl"></div> ...
<div style="clr"></div>
<div class="sqr fr"></div> ...
</div>
<style>
.outer { float: left; width:390px }
.sqr { width: 100px; height: 100px }
.fl { float: left; }
.fr { float: right; }
.clr { clear: both; }
</style>
Позиционирование
position: static – обычное расположением
position: relative – относительно исходного
местоположения на странице (смещение)
position: absolute – если родитель relative, absolute или
fixed – относительно родителя, иначе – относительно
начала документа (страницы)
position: fixed – относительно окна браузера
top/right/bottom/left – отступы, могут быть
отрицательными
Пример
Box model
margin: 10px
marign: 10px 5px;
margin: 1px 2px 3px 4px;
margin-left: 10px;
Спасибо за внимание
Дмитрий Смаль, smal@corp.mail.ru

More Related Content

What's hot

Как создать сайт
Как создать сайтКак создать сайт
Как создать сайтUnited Design
 
Css part2
Css part2Css part2
Css part2ISsoft
 
Css part1
Css part1Css part1
Css part1ISsoft
 
Язык Html
Язык HtmlЯзык Html
Язык HtmlNick535
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSDenis Latushkin
 
Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"Gotti Vartanyan
 
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...Max Kornev
 
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"Yandex
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрейVlado Sudin
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрейVlado Sudin
 
Noveo web intership html5, css, interface
Noveo web intership   html5, css, interfaceNoveo web intership   html5, css, interface
Noveo web intership html5, css, interfaceNoveo
 
Лекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЛекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЯковенко Кирилл
 
Артем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLАртем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLYandex
 

What's hot (20)

Как создать сайт
Как создать сайтКак создать сайт
Как создать сайт
 
Css part2
Css part2Css part2
Css part2
 
Css_pres
Css_presCss_pres
Css_pres
 
Css part1
Css part1Css part1
Css part1
 
Язык Html
Язык HtmlЯзык Html
Язык Html
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSS
 
Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"
 
55
5555
55
 
SASS & LESS
SASS & LESSSASS & LESS
SASS & LESS
 
рабочая тетрадь Html
рабочая тетрадь Htmlрабочая тетрадь Html
рабочая тетрадь Html
 
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...
Инструментарий интернет-журналиста: платформы, "хард" и "софт". Основы HTML. ...
 
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"
Сергей Бережной "Про шаблонизаторы вообще и BEMHTML в частности"
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
 
Noveo web intership html5, css, interface
Noveo web intership   html5, css, interfaceNoveo web intership   html5, css, interface
Noveo web intership html5, css, interface
 
HTML 2
HTML 2HTML 2
HTML 2
 
Лекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЛекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилей
 
Изучение HTML, CSS, PHP, MySQL
Изучение HTML, CSS, PHP, MySQLИзучение HTML, CSS, PHP, MySQL
Изучение HTML, CSS, PHP, MySQL
 
Артем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLАртем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTML
 
Css
CssCss
Css
 

Viewers also liked

Highload осень 2012 лекция 4
Highload осень 2012 лекция 4Highload осень 2012 лекция 4
Highload осень 2012 лекция 4Technopark
 
Бизнес и системный анализ весна 2013 лекция 4
Бизнес и системный анализ весна 2013 лекция 4Бизнес и системный анализ весна 2013 лекция 4
Бизнес и системный анализ весна 2013 лекция 4Technopark
 
АиСД осень 2012 лекция 9
АиСД осень 2012 лекция 9АиСД осень 2012 лекция 9
АиСД осень 2012 лекция 9Technopark
 
Highload осень 2012 лекция 1
Highload осень 2012 лекция 1Highload осень 2012 лекция 1
Highload осень 2012 лекция 1Technopark
 
АиСД осень 2012 лекция 6
АиСД осень 2012 лекция 6АиСД осень 2012 лекция 6
АиСД осень 2012 лекция 6Technopark
 
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"Technopark
 
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...Technopark
 
Лекция 10. Apache Mahout
Лекция 10. Apache MahoutЛекция 10. Apache Mahout
Лекция 10. Apache MahoutTechnopark
 
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"Technopark
 
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"Technopark
 
СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"Technopark
 
Лекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и HiveЛекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и HiveTechnopark
 
Лекция 12. Spark
Лекция 12. SparkЛекция 12. Spark
Лекция 12. SparkTechnopark
 
Лекция 6. MapReduce в Hadoop (графы)
Лекция 6. MapReduce в Hadoop (графы)Лекция 6. MapReduce в Hadoop (графы)
Лекция 6. MapReduce в Hadoop (графы)Technopark
 
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"Technopark
 
Лекция 9. ZooKeeper
Лекция 9. ZooKeeperЛекция 9. ZooKeeper
Лекция 9. ZooKeeperTechnopark
 
Лекция 14. Hadoop в Поиске Mail.Ru
Лекция 14. Hadoop в Поиске Mail.RuЛекция 14. Hadoop в Поиске Mail.Ru
Лекция 14. Hadoop в Поиске Mail.RuTechnopark
 
Лекция 2. Основы Hadoop
Лекция 2. Основы HadoopЛекция 2. Основы Hadoop
Лекция 2. Основы HadoopTechnopark
 

Viewers also liked (18)

Highload осень 2012 лекция 4
Highload осень 2012 лекция 4Highload осень 2012 лекция 4
Highload осень 2012 лекция 4
 
Бизнес и системный анализ весна 2013 лекция 4
Бизнес и системный анализ весна 2013 лекция 4Бизнес и системный анализ весна 2013 лекция 4
Бизнес и системный анализ весна 2013 лекция 4
 
АиСД осень 2012 лекция 9
АиСД осень 2012 лекция 9АиСД осень 2012 лекция 9
АиСД осень 2012 лекция 9
 
Highload осень 2012 лекция 1
Highload осень 2012 лекция 1Highload осень 2012 лекция 1
Highload осень 2012 лекция 1
 
АиСД осень 2012 лекция 6
АиСД осень 2012 лекция 6АиСД осень 2012 лекция 6
АиСД осень 2012 лекция 6
 
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"
СУБД 2013 Лекция №3 "Выборка данных (продолжение). Транзакции"
 
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
 
Лекция 10. Apache Mahout
Лекция 10. Apache MahoutЛекция 10. Apache Mahout
Лекция 10. Apache Mahout
 
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
 
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"СУБД 2013 Лекция №8 "Конфигурирование базы данных"
СУБД 2013 Лекция №8 "Конфигурирование базы данных"
 
СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"
 
Лекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и HiveЛекция 7. Введение в Pig и Hive
Лекция 7. Введение в Pig и Hive
 
Лекция 12. Spark
Лекция 12. SparkЛекция 12. Spark
Лекция 12. Spark
 
Лекция 6. MapReduce в Hadoop (графы)
Лекция 6. MapReduce в Hadoop (графы)Лекция 6. MapReduce в Hadoop (графы)
Лекция 6. MapReduce в Hadoop (графы)
 
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL"
 
Лекция 9. ZooKeeper
Лекция 9. ZooKeeperЛекция 9. ZooKeeper
Лекция 9. ZooKeeper
 
Лекция 14. Hadoop в Поиске Mail.Ru
Лекция 14. Hadoop в Поиске Mail.RuЛекция 14. Hadoop в Поиске Mail.Ru
Лекция 14. Hadoop в Поиске Mail.Ru
 
Лекция 2. Основы Hadoop
Лекция 2. Основы HadoopЛекция 2. Основы Hadoop
Лекция 2. Основы Hadoop
 

Similar to Web осень 2012 лекция 8

Web осень 2013 лекция 4
Web осень 2013 лекция 4Web осень 2013 лекция 4
Web осень 2013 лекция 4Technopark
 
Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Dmitriy Krukov
 
Crossbrowser Css layout
Crossbrowser Css layoutCrossbrowser Css layout
Crossbrowser Css layoutDarkestMaster
 
Верстка_Лекция_1
Верстка_Лекция_1Верстка_Лекция_1
Верстка_Лекция_1itc73
 
Верстка_Лекция_1
Верстка_Лекция_1Верстка_Лекция_1
Верстка_Лекция_1itc73
 
Верстка_Лекция1
Верстка_Лекция1Верстка_Лекция1
Верстка_Лекция1itc73
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSDataArt
 
03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTMLRoman Brovko
 
Trening modul2-conf1-tema5
Trening modul2-conf1-tema5Trening modul2-conf1-tema5
Trening modul2-conf1-tema5olgaoov
 
Верстка_Лекция2
Верстка_Лекция2Верстка_Лекция2
Верстка_Лекция2itc73
 
презентация 4. введение в css
презентация 4. введение в cssпрезентация 4. введение в css
презентация 4. введение в cssRusov1
 
Scino: Front-end [part-1]
Scino: Front-end [part-1]Scino: Front-end [part-1]
Scino: Front-end [part-1]SCINO
 
основы нтмл
основы нтмлосновы нтмл
основы нтмлolgaoov
 
CSS глазами машин
CSS глазами машинCSS глазами машин
CSS глазами машинRoman Dvornov
 
Web весна 2012 лекция 4
Web весна 2012 лекция 4Web весна 2012 лекция 4
Web весна 2012 лекция 4Technopark
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10Technopark
 
Лекция #3. Введение в языки разметки web-страниц
Лекция #3. Введение в языки разметки web-страницЛекция #3. Введение в языки разметки web-страниц
Лекция #3. Введение в языки разметки web-страницЯковенко Кирилл
 

Similar to Web осень 2012 лекция 8 (20)

Web осень 2013 лекция 4
Web осень 2013 лекция 4Web осень 2013 лекция 4
Web осень 2013 лекция 4
 
Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4
 
Crossbrowser Css layout
Crossbrowser Css layoutCrossbrowser Css layout
Crossbrowser Css layout
 
Верстка_Лекция_1
Верстка_Лекция_1Верстка_Лекция_1
Верстка_Лекция_1
 
Верстка_Лекция_1
Верстка_Лекция_1Верстка_Лекция_1
Верстка_Лекция_1
 
Верстка_Лекция1
Верстка_Лекция1Верстка_Лекция1
Верстка_Лекция1
 
5793.ppt
5793.ppt5793.ppt
5793.ppt
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSS
 
мова Html
мова Htmlмова Html
мова Html
 
03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML
 
Trening modul2-conf1-tema5
Trening modul2-conf1-tema5Trening modul2-conf1-tema5
Trening modul2-conf1-tema5
 
Верстка_Лекция2
Верстка_Лекция2Верстка_Лекция2
Верстка_Лекция2
 
презентация 4. введение в css
презентация 4. введение в cssпрезентация 4. введение в css
презентация 4. введение в css
 
Scino: Front-end [part-1]
Scino: Front-end [part-1]Scino: Front-end [part-1]
Scino: Front-end [part-1]
 
Lection1
Lection1Lection1
Lection1
 
основы нтмл
основы нтмлосновы нтмл
основы нтмл
 
CSS глазами машин
CSS глазами машинCSS глазами машин
CSS глазами машин
 
Web весна 2012 лекция 4
Web весна 2012 лекция 4Web весна 2012 лекция 4
Web весна 2012 лекция 4
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
 
Лекция #3. Введение в языки разметки web-страниц
Лекция #3. Введение в языки разметки web-страницЛекция #3. Введение в языки разметки web-страниц
Лекция #3. Введение в языки разметки web-страниц
 

More from Technopark

Лекция 11. Вычислительная модель Pregel
Лекция 11. Вычислительная модель PregelЛекция 11. Вычислительная модель Pregel
Лекция 11. Вычислительная модель PregelTechnopark
 
Лекция 13. YARN
Лекция 13. YARNЛекция 13. YARN
Лекция 13. YARNTechnopark
 
Лекция 5. MapReduce в Hadoop (алгоритмы)
Лекция 5. MapReduce в Hadoop (алгоритмы)Лекция 5. MapReduce в Hadoop (алгоритмы)
Лекция 5. MapReduce в Hadoop (алгоритмы)Technopark
 
Лекция 4. MapReduce в Hadoop (введение)
Лекция 4. MapReduce в Hadoop (введение)Лекция 4. MapReduce в Hadoop (введение)
Лекция 4. MapReduce в Hadoop (введение)Technopark
 
Лекция 3. Распределённая файловая система HDFS
Лекция 3. Распределённая файловая система HDFSЛекция 3. Распределённая файловая система HDFS
Лекция 3. Распределённая файловая система HDFSTechnopark
 
Лекция 1. Введение в Big Data и MapReduce
Лекция 1. Введение в Big Data и MapReduceЛекция 1. Введение в Big Data и MapReduce
Лекция 1. Введение в Big Data и MapReduceTechnopark
 
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...Technopark
 
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"Technopark
 
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...Technopark
 
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"Technopark
 
СУБД 2013 Лекция №1 "Введение и начало проектирования"
СУБД 2013 Лекция №1 "Введение и начало проектирования"СУБД 2013 Лекция №1 "Введение и начало проектирования"
СУБД 2013 Лекция №1 "Введение и начало проектирования"Technopark
 
Java осень 2014 занятие 8
Java осень 2014 занятие 8Java осень 2014 занятие 8
Java осень 2014 занятие 8Technopark
 
Java осень 2014 занятие 7
Java осень 2014 занятие 7Java осень 2014 занятие 7
Java осень 2014 занятие 7Technopark
 
Java осень 2014 занятие 6
Java осень 2014 занятие 6Java осень 2014 занятие 6
Java осень 2014 занятие 6Technopark
 
Java осень 2014 занятие 5
Java осень 2014 занятие 5Java осень 2014 занятие 5
Java осень 2014 занятие 5Technopark
 
Java осень 2014 занятие 3
Java осень 2014 занятие 3Java осень 2014 занятие 3
Java осень 2014 занятие 3Technopark
 
Java осень 2014 занятие 1
Java осень 2014 занятие 1Java осень 2014 занятие 1
Java осень 2014 занятие 1Technopark
 

More from Technopark (17)

Лекция 11. Вычислительная модель Pregel
Лекция 11. Вычислительная модель PregelЛекция 11. Вычислительная модель Pregel
Лекция 11. Вычислительная модель Pregel
 
Лекция 13. YARN
Лекция 13. YARNЛекция 13. YARN
Лекция 13. YARN
 
Лекция 5. MapReduce в Hadoop (алгоритмы)
Лекция 5. MapReduce в Hadoop (алгоритмы)Лекция 5. MapReduce в Hadoop (алгоритмы)
Лекция 5. MapReduce в Hadoop (алгоритмы)
 
Лекция 4. MapReduce в Hadoop (введение)
Лекция 4. MapReduce в Hadoop (введение)Лекция 4. MapReduce в Hadoop (введение)
Лекция 4. MapReduce в Hadoop (введение)
 
Лекция 3. Распределённая файловая система HDFS
Лекция 3. Распределённая файловая система HDFSЛекция 3. Распределённая файловая система HDFS
Лекция 3. Распределённая файловая система HDFS
 
Лекция 1. Введение в Big Data и MapReduce
Лекция 1. Введение в Big Data и MapReduceЛекция 1. Введение в Big Data и MapReduce
Лекция 1. Введение в Big Data и MapReduce
 
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...
СУБД 2013 Лекция №10 "Нереляционное решение в области баз данных — NoSQL" Час...
 
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"
 
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
 
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"
СУБД 2013 Лекция №2 "Модификация данных. Выборка данных (начало)"
 
СУБД 2013 Лекция №1 "Введение и начало проектирования"
СУБД 2013 Лекция №1 "Введение и начало проектирования"СУБД 2013 Лекция №1 "Введение и начало проектирования"
СУБД 2013 Лекция №1 "Введение и начало проектирования"
 
Java осень 2014 занятие 8
Java осень 2014 занятие 8Java осень 2014 занятие 8
Java осень 2014 занятие 8
 
Java осень 2014 занятие 7
Java осень 2014 занятие 7Java осень 2014 занятие 7
Java осень 2014 занятие 7
 
Java осень 2014 занятие 6
Java осень 2014 занятие 6Java осень 2014 занятие 6
Java осень 2014 занятие 6
 
Java осень 2014 занятие 5
Java осень 2014 занятие 5Java осень 2014 занятие 5
Java осень 2014 занятие 5
 
Java осень 2014 занятие 3
Java осень 2014 занятие 3Java осень 2014 занятие 3
Java осень 2014 занятие 3
 
Java осень 2014 занятие 1
Java осень 2014 занятие 1Java осень 2014 занятие 1
Java осень 2014 занятие 1
 

Web осень 2012 лекция 8

  • 2. HTML 1986 – SGML. Логическое описание структуры 1989 – 1991 – Тим Бернерс Ли создал HTML Для тех. документации. Без мультимедиа Война браузеров. HTML 1.0 так и не создали 1994 – Создание W3C 1995 – HTML 2.0 объявлен как стандарт 1997 – HTML 3.2, HTML 4.0 (+CSS) 1999 – HTML 4.01 Сейчас – HTML 5
  • 5. HTML <!DOCTYPE html> <html> <head> <title>Страница</title> <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8”> <meta name=”description” content=”Сайт о создании сайтов”> <link rel=”stylesheet” href=”./style.css”> <script type=”text/javascript” src=”./script.js”></script> </head> <body id=”the_body”> <p class=”article”>...</p> </body> </html>
  • 6. HTML  Произвольный регистр: <BR> == <br>  Атрибуты без скобок: color=red  Сокращенные атрибуты: disabled  Непарные тэги: <p> вместо <p></p>  Перестановки тэгов: <b><i></b></i>
  • 7. XHTML  только нижний регистр тэгов  атрибуты со скобоками: color=”red”  атрибуты – без сокращений: disabled=”disabled”  Тэги всегда парные: <p></p>  Строгая вложенность: <i><b></b></i>  id вместо name  Необходим DOCTYPE
  • 8. DOCTYPE Определяет тип разметки содержимого – DTD. Влияет на отображение страницы браузером. HTML 4.01 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
  • 9. DOCTYPE XHTML 1.0 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- strict.dtd"> XHTML 1.1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <!DOCTYPE html> HTML 5
  • 10. Тэги верхнего уровня html – обертка head – заголовок страницы, не отображается body – тело страницы
  • 11. Тэги заголовков <title> - отображается в заголовке окна. <meta> - информация для user-agentов. <meta name="description" content="Сайт об HTML и создании сайтов"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link rel="stylesheet" href="./style.css"> - загрузка дополнительных ресурсов <script src="./jquery.js"></script> - загрузка скриптов
  • 12. Блочные тэги <h1> - <h6> - различные уровни заголовков <p> - разбиение текста на параграфы <hr> - горизонтальная линия <pre> - блок преформатированного кода, например исходный код программы <blockquote> - цитирование длинного блока текста <div> - абстрактный блочный контейнер
  • 14. Строчные тэги <a> - гиперссылки <em> <i> - акцентирование <strong><b> - выделение <img src=”..”> - вставка изображений <sub> - нижний индекс <sup> - верхний индекс <span> - абстрактный строчный контейнер
  • 15. Списки в HTML <ol>, <ul>, <li> - маркированые списки <ul> <li>one</li> <li>two</li> </ul> <dl> <dt>HTML</dt><dd>язык разметки</dd> <dt>CSS</dt><dd>язык описания стилей</dd> </dl> <dl>, <dt>, <dd> - списки определений
  • 16. Таблицы в HTML <table border=”1”> <caption>квартальный отчет</caption> <thead> <tr> <td>дата</td> <td colspan=”2”>доход</td> </tr> </thead> <tbody> <tr> <th rowspan=”2”>2011-01-01</th> <td>100500</td> <td>33</td> </tr> <tr> <td>100</td> <td>500</td> </tr> </tbody> </table>
  • 18. Гиперссылки Ссылки: <a href=”URL” target=”_blank” rel=”nofollow”> <img src=”nice.jpg”> </a> Поведение браузера зависит от протокола URL. http(s), ftp – переход по ссылке mailto – запуск почтовой программы javascript – запуст JS скрипта, указанного в URL Якоря: <a name=”chapter1”>Глава 1</a>
  • 19. Формы <form method=”post” action=”/add/” enctype="multipart/form-data” target=”frame3” > <input name=”image” type=”file”> <input name=”id” type=”hidden” value=”3”> <input name=”nick” type=”text”> <input type=”submit” value=”Отправить”> <button>Все равно отправить</button> </form>
  • 20. Элементы управления <input> - текстовое поле, checkbox, radiobutton, скрытое поле, ввод пароля, выбор файла, кнопка отправки. <select>, <option> - выпадающий селектор, множественный выбор ( multiple ) <textarea> - многострочное текстовое поле.
  • 22. HTML Frames Важно: DOCTYPE, скрывается URL и title, плохо поддерживается поисковыми ботами. <frameset rows="*" cols="80,*"> <frame src="frame1.html" name="Фрейм 1"> <frameset rows="80,*"> <frame src="frame2.html" name="Фрейм 2"> <frame src="frame3.html" name="Фрейм 3"> </frameset> </frameset>
  • 23. CSS
  • 24. CSS Как описать оформление страницы ?  XML – логическая разметка данных  HTML – набор тэгов + семантика + минимальные возможности стилизации  <em>, <strong>, <font> - неудобно. Решение: Отделить оформление от структуры – использовать отдельный язык для стилей.
  • 25. Основы синтаксиса CSS /* some real css */ .mid-play { padding:13px 0px 0px 13px; } p.inner-play a { color:#3c3c3c; text-decoration: underline; } .big-top { background-image:url(/img/pc/220_130_top.gif); } /* комментарии */ cелектор { имя_стиля1: значение1; … }
  • 26. Какие бывают стили ? width, height – размеры элемента margin, padding – границы и отступы display, visibility – режим отображения top, left, right, bottom – расположение background – фон элемента font – управление шрифтом text-align – выравнивание текста И т.д: http://htmlbook.ru/css
  • 27. Базовые селекторы Универсальный селектор * { margin: 0px; padding: 0px; border: 0px; } Имена тэгов p { margin-top: 10px; } Имена классов (с точки) .btn { border: solid 1px gray; } id тэгов (с решетки) #userpic { padding: 10px }
  • 28. Сложные селекторы контекстные (вложенные) div.article a { text-decoration: underline } дочерние (вложенность = 1 уровень) a > img { border: 2px } соседние h2.sic + p { margin-left: 30px } группировка h1, h2, h3, h4, h5 { color: red }
  • 29. Псевдоклассы a:visited – посещенная ссылка a:link – непосещенная ссылка div:hover – элемент при наведении мыши input:focus – элемент при полчении фокуса li:first-child – выбирает первого потомка среди множества элементов * One * Two * Three
  • 30. Псевдоэлементы Для примера: .nickname:first-letter {color: white} p:first-line {color: red} Для добра: .userpic:before { content: ''; display: block; width: 100px; height: 5px; background-color: gray; }
  • 31. Наследование Перенос стилей на вложенные элементы body { color: darkgray; font-family: Arial; } p { font-size: 110% } <body> <p> Привет, <a href=”/”>Мир</a> </p> </body> Не все стили наследуются !
  • 32. Где могут определить ?  Стили браузера  Стили пользователя  Стили автора Во внешнем файле <link rel="stylesheet" href="/style.css"> В html документе <style></style> Встроенные в элемент <div style=”display: none”></div>
  • 33. Приоритеты стилей 1) Специфичность – вычисление баллов id – 100 классы и псевдоклассы – 10 тэги и псевдо элеметы – 1 ul.info ol + li 13 баллов→ li.red.level 21 балл→ 2) Встроенный стиль: специфичность = 1000 3) Расположение в коде: последний стиль 4) .inone { display: none !important }
  • 34. Типы элементов display: none – элемент невидим, не занимает места (vs visibility: hidden) display: block – элемент занимает максимальную ширину, начинается с новой строки, учитывает width, height. div, h1-h6, p – блочные. display: inline – элемент занимает минимальную ширину, и не прерывает строку, игнорирует width, height. span, img, a – строчные. display: table-cell – как ячейка таблицы
  • 35. DIV vs SPAN <div class="t">ONE</div> <div class="t">2</div> <span class="t">ONE</span> <span class="t">2</span> <style> .t { width: 200px; height: 100px; background: red; color: white; margin: 5px; padding: 4px; } </style>
  • 36. float & clear float – задает правила обтекания элемента clear – отменяет обтекание начиная с элемента
  • 37. float & clear <div class="outer"> <div class="sqr fl"></div> ... <div style="clr"></div> <div class="sqr fr"></div> ... </div> <style> .outer { float: left; width:390px } .sqr { width: 100px; height: 100px } .fl { float: left; } .fr { float: right; } .clr { clear: both; } </style>
  • 38. Позиционирование position: static – обычное расположением position: relative – относительно исходного местоположения на странице (смещение) position: absolute – если родитель relative, absolute или fixed – относительно родителя, иначе – относительно начала документа (страницы) position: fixed – относительно окна браузера top/right/bottom/left – отступы, могут быть отрицательными
  • 40. Box model margin: 10px marign: 10px 5px; margin: 1px 2px 3px 4px; margin-left: 10px;