SlideShare a Scribd company logo
1 of 52
Download to read offline
HTML, CSS, JS
Лихобабин Сергей
Как это выглядело
2
Как разрешаются URL
3
Структура файлов (public)
.
├── bootstrap
│ ├── css
│ │ └── bootstrap.min.css
│ ├── img
│ └── js
│ └── bootstrap.min.js
├── index.html
├── jquery.js
├── myscript.js
└── style.css
Основной URL:
http://localhost/
http://localhost/index.html
Что можно писать в src, href:
1) С другого сервера
http://games.mail.ru/jquery.js
2) Из document root
/jquery.js – всегда из public
3) Соседний файл
jquery.js
bootstrap/css/bootstrap.min.css
./bootstrap/js/bootstrap.min.js
HTML
4
<!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”>
</head>
<body id=”the_body”>
<p class=”article”>...</p>
<script type=”text/javascript”
src=”./script.js”></script>
</body>
</html>
HTML
5
 Произвольный регистр: <BR> == <br>
 Атрибуты без скобок: color=red
 Сокращенные атрибуты: disabled
 Непарные тэги: <p> вместо <p></p>
 Перестановки тэгов: <b><i></b></i>
 “Свои” тэги: <magic></magic>
HTML
6
 Только нижний регистр тэгов
 Атрибуты со скобками: color=”red”
 Атрибуты – без сокращений: disabled=”disabled”
 Тэги всегда парные: <p></p>
 Строгая вложенность: <i><b></b></i>
 id вместо name
 Необходим DOCTYPE
XHTML
7
Определяет тип разметки содержимого – 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
8
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
DOCTYPE
9
html ― обертка
head ― заголовок страницы, не отображается
body ― тело страницы
Тэги верхнего уровня
10
<title> ― отображается в заголовке окна.
<meta> ― информация для user-agentов.
<link rel="stylesheet" href="./style.css"> ― загрузка стилей
<script src="./jquery.js"></script> ― загрузка скриптов
<meta name="description"
content="Сайт об HTML и создании сайтов">
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">
Тэги заголовков
11
<h1> - <h6> ― различные уровни заголовков
<p> ― разбиение текста на параграфы
<hr> ― горизонтальная линия
<pre> ― блок преформатированного кода, например исходный код программы
<blockquote> ― цитирование длинного блока текста
<div> ― абстрактный блочный контейнер
Блочные тэги
12
Пример: h3 и p
13
<a> ― гиперссылки
<em> <i> ― акцентирование
<strong><b> ― выделение
<img src=”..”> ― вставка изображений
<sub> ― нижний индекс
<sup> ― верхний индекс
<span> ― абстрактный строчный контейнер
Строчные тэги
14
<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
15
<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
16
Пример таблицы в HTML
17
Ссылки:
<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>
Гиперссылки
18
<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 type="submit">
Все равно отправить
</button>
</form>
Формы
19
<input> ― текстовое поле, checkbox, radiobutton, скрытое поле, ввод пароля, выбор файла, кнопка
отправки.
<select>, <option> ― выпадающий селектор, множественный выбор ( multiple )
<textarea> ― многострочное текстовое поле.
Элементы управления
20
Элементы управления
21
CSS
22
Как описать оформление страницы ?
 XML ― логическая разметка данных
 HTML ― набор тэгов + семантика + минимальные возможности стилизации
 <em>, <strong>, <font> ― неудобно.
Решение:
Отделить оформление от структуры – использовать отдельный язык для стилей.
CSS
23
/* 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; … }
Основы синтаксиса CSS
24
width, height ― размеры элемента
margin, padding ― границы и отступы
display, visibility ― режим отображения
top, left, right, bottom ― расположение
background ― фон элемента
font ― управление шрифтом
text-align ― выравнивание текста
И т.д: http://htmlbook.ru/css
Какие бывают стили ?
25
Универсальный селектор
* { margin: 0px; padding: 0px; border: 0px; }
Имена тэгов
p { margin-top: 10px; }
Имена классов (с точки)
.btn { border: solid 1px gray; }
id тэгов (с решетки)
#userpic { padding: 10px }
Базовые селекторы
26
контекстные (вложенные)
div.article a { text-decoration: underline }
дочерние (вложенность = 1 уровень)
a > img { border: 2px }
соседние
h2.sic + p { margin-left: 30px }
группировка
h1, h2, h3, h4, h5 { color: red }
Сложные селекторы
27
a:visited ― посещенная ссылка
a:link ― непосещенная ссылка
div:hover ― элемент при наведении мыши
input:focus ― элемент при полчении фокуса
li:first-child ― выбирает первого потомка среди множества элементов
* One
* Two
* Three
Псевдоклассы
28
Перенос стилей на вложенные элементы
<head>
<style>
body { color: darkgray; font-family: Arial; }
p { font-size: 110% }
</style>
</head>
<body>
<p> Привет, <a href=”/”>Мир</a> </p>
</body>
Не все стили наследуются !
Наследование
29
 Стили браузера
 Стили пользователя
 Стили автора
Во внешнем файле
<link rel="stylesheet" href="/style.css">
В html документе
<style></style>
Встроенные в элемент
<div style=”display: none”></div>
Где могут определить ?
30
1.Специфичность ― вычисление баллов
id – 100
классы и псевдоклассы – 10
тэги и псевдо элеметы – 1
ul.info ol + li → 13 баллов
li.red.level → 21 балл
2.Встроенный стиль: специфичность = 1000
3.Расположение в коде: последний стиль
4..inone { display: none !important }
Приоритеты стилей
31
display: none ― элемент невидим, не занимает места (vs visibility: hidden)
display: block ― элемент занимает максимальную ширину, начинается с новой строки, учитывает
width, height. div, h1-h6, p – блочные.
display: inline ― элемент занимает минимальную ширину, и не прерывает строку, игнорирует width,
height. span, img, a – строчные.
display: table-cell ― как ячейка таблицы
Отображение элементов
32
<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>
DIV vs SPAN
33
float ― задает правила обтекания элемента
clear ― отменяет обтекание начиная с элемента
float & clear
34
<div class="outer">
<div class="sqr fl"></div> ...
<div class="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>
float & clear
35
position: static ― обычное расположение
position: relative ― относительно начального местоположения на странице (смещение)
position: absolute ― если родитель relative, absolute или fixed – относительно родителя, иначе -
относительно начала документа (страницы)
position: fixed ― относительно окна браузера
top/right/bottom/left ― отступы, могут быть отрицательными
Позиционирование и flow
36
margin: 10px
margin: 10px 5px;
margin: 1px 2px 3px 4px;
margin-left: 10px;
Box model
37
width
width
box-sizing: content-box (по умолчанию)
box-sizing: border-box
38
http://getbootstrap.com/2.3.2/
• Шаблон страниц
• Стили «по умолчанию»
• Сетка
• Верстка: таблицы, формы, списки, кнопки, …
• Компоненты: навигация, меню, пагинатор, …
• JavaScript плагины: модальные окна, вкладки, подсказки, выпадающие списки…
И все это с примерами!
Что включает Bootstrap
39
Сетка (grid)
40
<div class="row-fluid">
<div class="span4">...</div>
<div class="span8">...</div>
</div>
Шаблон сайта (layout)
41
<div class="container-fluid">
<div class="row-fluid">
<div class="span8">...</div>
<div class="span4">...</div>
</div>
</div>
Сетка (grid)
42
<div class="row-fluid">
<div class="span4">...</div>
<div class="span4 offset4">...</div>
</div>
<div class="row-fluid">
<div class="span3 offset3">...</div>
<div class="span3 offset3">...</div>
</div>
Таблицы
43
<table class="table table-bordered">…</table>
table – базовые стили
table-striped – «в полоску»
table-bordered – с границами
table-hover – подсветка текущей строки
table-condensed – более компактная верстка
Формы
44
control-group
control-label controls input, textarea…
Компоненты
45
Навигационная панель navbar
Вкладки
Пагинация
Сообщение
Javascript
46
Во внешнем файле
<script type="text/javascript" src="/common.js">
Внутри тэга
<script>alert('hello');</script>
Обработчик события
<a onclick="alert('hello'); return False;"></a>
Как использовать Javascript?
Jquery — Основные особенности
Выбор элементов по css селектору
$('.class li');
Обработка событий
$('.button').click(function(){...});
Простые манипуляции с элементами
$('.answer').parent().hide();
Отправка асинхронных запросов
$.ajax(); $.get(); $.post();
http://api.jquery.com/
50
Домашняя работа
Сверстать 1 страницу проекта в статике
51
Домашняя работа
container-fluid
navbar
navs
button
row-fluid
span9
span3
Спасибо за внимание
Сергей Лихобабин, s.lihobabin@corp.mail.ru

More Related Content

What's hot

"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)
"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)
"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)AvitoTech
 
CSS Язык описания представлений
CSS Язык описания представленийCSS Язык описания представлений
CSS Язык описания представленийVasya Petrov
 
Как создать сайт
Как создать сайтКак создать сайт
Как создать сайтUnited Design
 
Web весна 2012 лекция 10
Web весна 2012 лекция 10Web весна 2012 лекция 10
Web весна 2012 лекция 10Technopark
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10Technopark
 
Артем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLАртем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLYandex
 
Web весна 2012 лекция 4
Web весна 2012 лекция 4Web весна 2012 лекция 4
Web весна 2012 лекция 4Technopark
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSDataArt
 
Лекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЛекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЯковенко Кирилл
 
Арсений Форштретер: CSS-селекторы
Арсений Форштретер: CSS-селекторыАрсений Форштретер: CSS-селекторы
Арсений Форштретер: CSS-селекторыYandex
 
Web осень 2012 лекция 10
Web осень 2012 лекция 10Web осень 2012 лекция 10
Web осень 2012 лекция 10Technopark
 
03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTMLRoman Brovko
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSDenis Latushkin
 
Верстка_Лекция_3
Верстка_Лекция_3Верстка_Лекция_3
Верстка_Лекция_3itc73
 
Верстка_Лекция2
Верстка_Лекция2Верстка_Лекция2
Верстка_Лекция2itc73
 

What's hot (20)

Basis.js - Production Ready Framework
Basis.js - Production Ready FrameworkBasis.js - Production Ready Framework
Basis.js - Production Ready Framework
 
"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)
"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)
"Basis.js - Production Ready SPA Framework" Сергей Мелюков (Avito)
 
Css_pres
Css_presCss_pres
Css_pres
 
CSS Язык описания представлений
CSS Язык описания представленийCSS Язык описания представлений
CSS Язык описания представлений
 
Как создать сайт
Как создать сайтКак создать сайт
Как создать сайт
 
Web весна 2012 лекция 10
Web весна 2012 лекция 10Web весна 2012 лекция 10
Web весна 2012 лекция 10
 
Шаблонизация
ШаблонизацияШаблонизация
Шаблонизация
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
 
Артем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTMLАртем Кувалдин: Основы HTML
Артем Кувалдин: Основы HTML
 
Web весна 2012 лекция 4
Web весна 2012 лекция 4Web весна 2012 лекция 4
Web весна 2012 лекция 4
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSS
 
SASS & LESS
SASS & LESSSASS & LESS
SASS & LESS
 
Лекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилейЛекция #4. Каскадные таблицы стилей
Лекция #4. Каскадные таблицы стилей
 
мова Html
мова Htmlмова Html
мова Html
 
Арсений Форштретер: CSS-селекторы
Арсений Форштретер: CSS-селекторыАрсений Форштретер: CSS-селекторы
Арсений Форштретер: CSS-селекторы
 
Web осень 2012 лекция 10
Web осень 2012 лекция 10Web осень 2012 лекция 10
Web осень 2012 лекция 10
 
03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML03 - Web-технологии. Язык разметки HTML
03 - Web-технологии. Язык разметки HTML
 
Основы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSSОсновы работы с таблицами стилей CSS
Основы работы с таблицами стилей CSS
 
Верстка_Лекция_3
Верстка_Лекция_3Верстка_Лекция_3
Верстка_Лекция_3
 
Верстка_Лекция2
Верстка_Лекция2Верстка_Лекция2
Верстка_Лекция2
 

Similar to Лекция 4 Client-side

Web осень 2013 лекция 4
Web осень 2013 лекция 4Web осень 2013 лекция 4
Web осень 2013 лекция 4Technopark
 
Css Intro. Vlad Savitsky
Css Intro. Vlad SavitskyCss Intro. Vlad Savitsky
Css Intro. Vlad SavitskyVlad Savitsky
 
Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.DataArt
 
Scino: Front-end [part-1]
Scino: Front-end [part-1]Scino: Front-end [part-1]
Scino: Front-end [part-1]SCINO
 
Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)Noveo
 
всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта  всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта Olga Pirozhenko
 
Css part2
Css part2Css part2
Css part2ISsoft
 
Bootstrap 3. Адаптивная верстка для WordPress
Bootstrap 3. Адаптивная верстка для WordPressBootstrap 3. Адаптивная верстка для WordPress
Bootstrap 3. Адаптивная верстка для WordPressIgor Sazonov
 
Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Dmitriy Krukov
 
Crossbrowser Css layout
Crossbrowser Css layoutCrossbrowser Css layout
Crossbrowser Css layoutDarkestMaster
 
CSS глазами машин
CSS глазами машинCSS глазами машин
CSS глазами машинRoman Dvornov
 
Андрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkАндрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkAlbina Tiupa
 
18. синтаксис css
18. синтаксис css18. синтаксис css
18. синтаксис cssSergei Dubrov
 
Роман Комаров — «Механизм работы браузера»
Роман Комаров — «Механизм работы браузера»Роман Комаров — «Механизм работы браузера»
Роман Комаров — «Механизм работы браузера»Yandex
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингTimophy Chaptykov
 

Similar to Лекция 4 Client-side (20)

Web осень 2013 лекция 4
Web осень 2013 лекция 4Web осень 2013 лекция 4
Web осень 2013 лекция 4
 
Css Intro. Vlad Savitsky
Css Intro. Vlad SavitskyCss Intro. Vlad Savitsky
Css Intro. Vlad Savitsky
 
Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.
 
Scino: Front-end [part-1]
Scino: Front-end [part-1]Scino: Front-end [part-1]
Scino: Front-end [part-1]
 
Bootstrap 3
Bootstrap 3Bootstrap 3
Bootstrap 3
 
CSS
CSSCSS
CSS
 
Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)
 
всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта  всплывающее окно при закрытии сайта
всплывающее окно при закрытии сайта
 
Css part2
Css part2Css part2
Css part2
 
Bootstrap 3. Адаптивная верстка для WordPress
Bootstrap 3. Адаптивная верстка для WordPressBootstrap 3. Адаптивная верстка для WordPress
Bootstrap 3. Адаптивная верстка для WordPress
 
Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4
 
Crossbrowser Css layout
Crossbrowser Css layoutCrossbrowser Css layout
Crossbrowser Css layout
 
рабочая тетрадь Html
рабочая тетрадь Htmlрабочая тетрадь Html
рабочая тетрадь Html
 
CSS глазами машин
CSS глазами машинCSS глазами машин
CSS глазами машин
 
Андрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkАндрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass framework
 
18. синтаксис css
18. синтаксис css18. синтаксис css
18. синтаксис css
 
Роман Комаров — «Механизм работы браузера»
Роман Комаров — «Механизм работы браузера»Роман Комаров — «Механизм работы браузера»
Роман Комаров — «Механизм работы браузера»
 
Jquery
JqueryJquery
Jquery
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендеринг
 
Парсим CSS
Парсим CSSПарсим CSS
Парсим CSS
 

More from Technosphere1

Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Technosphere1
 
Лекция №13 "Глубокие нейронные сети"
Лекция №13 "Глубокие нейронные сети" Лекция №13 "Глубокие нейронные сети"
Лекция №13 "Глубокие нейронные сети" Technosphere1
 
Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана" Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана" Technosphere1
 
Лекция №11 "Основы нейронных сетей"
Лекция №11 "Основы нейронных сетей" Лекция №11 "Основы нейронных сетей"
Лекция №11 "Основы нейронных сетей" Technosphere1
 
Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"Technosphere1
 
Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Technosphere1
 
Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов" Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов" Technosphere1
 
Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии" Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии" Technosphere1
 
Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes" Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes" Technosphere1
 
Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"Technosphere1
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Technosphere1
 
Лекция №1 "Задачи Data Mining"
Лекция №1 "Задачи Data Mining" Лекция №1 "Задачи Data Mining"
Лекция №1 "Задачи Data Mining" Technosphere1
 
Лекция №3 "Различные алгоритмы кластеризации"
Лекция №3 "Различные алгоритмы кластеризации"Лекция №3 "Различные алгоритмы кластеризации"
Лекция №3 "Различные алгоритмы кластеризации"Technosphere1
 
L13: Заключительная
L13: ЗаключительнаяL13: Заключительная
L13: ЗаключительнаяTechnosphere1
 
Л9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложенийЛ9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложенийTechnosphere1
 
Л8 Django. Дополнительные темы
Л8 Django. Дополнительные темыЛ8 Django. Дополнительные темы
Л8 Django. Дополнительные темыTechnosphere1
 
L11: Метод ансамблей
L11: Метод ансамблейL11: Метод ансамблей
L11: Метод ансамблейTechnosphere1
 
Мастер-класс: Особенности создания продукта для мобильного веб
Мастер-класс: Особенности создания продукта для мобильного вебМастер-класс: Особенности создания продукта для мобильного веб
Мастер-класс: Особенности создания продукта для мобильного вебTechnosphere1
 

More from Technosphere1 (20)

Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение"
 
Лекция №13 "Глубокие нейронные сети"
Лекция №13 "Глубокие нейронные сети" Лекция №13 "Глубокие нейронные сети"
Лекция №13 "Глубокие нейронные сети"
 
Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана" Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана"
 
Лекция №11 "Основы нейронных сетей"
Лекция №11 "Основы нейронных сетей" Лекция №11 "Основы нейронных сетей"
Лекция №11 "Основы нейронных сетей"
 
Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"
 
Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства"
 
Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов" Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов"
 
Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии" Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии"
 
Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes" Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes"
 
Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
 
Лекция №1 "Задачи Data Mining"
Лекция №1 "Задачи Data Mining" Лекция №1 "Задачи Data Mining"
Лекция №1 "Задачи Data Mining"
 
Лекция №3 "Различные алгоритмы кластеризации"
Лекция №3 "Различные алгоритмы кластеризации"Лекция №3 "Различные алгоритмы кластеризации"
Лекция №3 "Различные алгоритмы кластеризации"
 
L13: Заключительная
L13: ЗаключительнаяL13: Заключительная
L13: Заключительная
 
Л9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложенийЛ9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложений
 
Л8 Django. Дополнительные темы
Л8 Django. Дополнительные темыЛ8 Django. Дополнительные темы
Л8 Django. Дополнительные темы
 
Webdev7 (2)
Webdev7 (2)Webdev7 (2)
Webdev7 (2)
 
L11: Метод ансамблей
L11: Метод ансамблейL11: Метод ансамблей
L11: Метод ансамблей
 
Мастер-класс: Особенности создания продукта для мобильного веб
Мастер-класс: Особенности создания продукта для мобильного вебМастер-класс: Особенности создания продукта для мобильного веб
Мастер-класс: Особенности создания продукта для мобильного веб
 
Web лекция 1
Web   лекция 1Web   лекция 1
Web лекция 1
 

Лекция 4 Client-side

  • 3. Как разрешаются URL 3 Структура файлов (public) . ├── bootstrap │ ├── css │ │ └── bootstrap.min.css │ ├── img │ └── js │ └── bootstrap.min.js ├── index.html ├── jquery.js ├── myscript.js └── style.css Основной URL: http://localhost/ http://localhost/index.html Что можно писать в src, href: 1) С другого сервера http://games.mail.ru/jquery.js 2) Из document root /jquery.js – всегда из public 3) Соседний файл jquery.js bootstrap/css/bootstrap.min.css ./bootstrap/js/bootstrap.min.js
  • 5. <!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”> </head> <body id=”the_body”> <p class=”article”>...</p> <script type=”text/javascript” src=”./script.js”></script> </body> </html> HTML 5
  • 6.  Произвольный регистр: <BR> == <br>  Атрибуты без скобок: color=red  Сокращенные атрибуты: disabled  Непарные тэги: <p> вместо <p></p>  Перестановки тэгов: <b><i></b></i>  “Свои” тэги: <magic></magic> HTML 6
  • 7.  Только нижний регистр тэгов  Атрибуты со скобками: color=”red”  Атрибуты – без сокращений: disabled=”disabled”  Тэги всегда парные: <p></p>  Строгая вложенность: <i><b></b></i>  id вместо name  Необходим DOCTYPE XHTML 7
  • 8. Определяет тип разметки содержимого – 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 8
  • 9. 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 DOCTYPE 9
  • 10. html ― обертка head ― заголовок страницы, не отображается body ― тело страницы Тэги верхнего уровня 10
  • 11. <title> ― отображается в заголовке окна. <meta> ― информация для user-agentов. <link rel="stylesheet" href="./style.css"> ― загрузка стилей <script src="./jquery.js"></script> ― загрузка скриптов <meta name="description" content="Сайт об HTML и создании сайтов"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> Тэги заголовков 11
  • 12. <h1> - <h6> ― различные уровни заголовков <p> ― разбиение текста на параграфы <hr> ― горизонтальная линия <pre> ― блок преформатированного кода, например исходный код программы <blockquote> ― цитирование длинного блока текста <div> ― абстрактный блочный контейнер Блочные тэги 12
  • 14. <a> ― гиперссылки <em> <i> ― акцентирование <strong><b> ― выделение <img src=”..”> ― вставка изображений <sub> ― нижний индекс <sup> ― верхний индекс <span> ― абстрактный строчный контейнер Строчные тэги 14
  • 15. <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 15
  • 16. <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 16
  • 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> Гиперссылки 18
  • 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 type="submit"> Все равно отправить </button> </form> Формы 19
  • 20. <input> ― текстовое поле, checkbox, radiobutton, скрытое поле, ввод пароля, выбор файла, кнопка отправки. <select>, <option> ― выпадающий селектор, множественный выбор ( multiple ) <textarea> ― многострочное текстовое поле. Элементы управления 20
  • 23. Как описать оформление страницы ?  XML ― логическая разметка данных  HTML ― набор тэгов + семантика + минимальные возможности стилизации  <em>, <strong>, <font> ― неудобно. Решение: Отделить оформление от структуры – использовать отдельный язык для стилей. CSS 23
  • 24. /* 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; … } Основы синтаксиса CSS 24
  • 25. width, height ― размеры элемента margin, padding ― границы и отступы display, visibility ― режим отображения top, left, right, bottom ― расположение background ― фон элемента font ― управление шрифтом text-align ― выравнивание текста И т.д: http://htmlbook.ru/css Какие бывают стили ? 25
  • 26. Универсальный селектор * { margin: 0px; padding: 0px; border: 0px; } Имена тэгов p { margin-top: 10px; } Имена классов (с точки) .btn { border: solid 1px gray; } id тэгов (с решетки) #userpic { padding: 10px } Базовые селекторы 26
  • 27. контекстные (вложенные) div.article a { text-decoration: underline } дочерние (вложенность = 1 уровень) a > img { border: 2px } соседние h2.sic + p { margin-left: 30px } группировка h1, h2, h3, h4, h5 { color: red } Сложные селекторы 27
  • 28. a:visited ― посещенная ссылка a:link ― непосещенная ссылка div:hover ― элемент при наведении мыши input:focus ― элемент при полчении фокуса li:first-child ― выбирает первого потомка среди множества элементов * One * Two * Three Псевдоклассы 28
  • 29. Перенос стилей на вложенные элементы <head> <style> body { color: darkgray; font-family: Arial; } p { font-size: 110% } </style> </head> <body> <p> Привет, <a href=”/”>Мир</a> </p> </body> Не все стили наследуются ! Наследование 29
  • 30.  Стили браузера  Стили пользователя  Стили автора Во внешнем файле <link rel="stylesheet" href="/style.css"> В html документе <style></style> Встроенные в элемент <div style=”display: none”></div> Где могут определить ? 30
  • 31. 1.Специфичность ― вычисление баллов id – 100 классы и псевдоклассы – 10 тэги и псевдо элеметы – 1 ul.info ol + li → 13 баллов li.red.level → 21 балл 2.Встроенный стиль: специфичность = 1000 3.Расположение в коде: последний стиль 4..inone { display: none !important } Приоритеты стилей 31
  • 32. display: none ― элемент невидим, не занимает места (vs visibility: hidden) display: block ― элемент занимает максимальную ширину, начинается с новой строки, учитывает width, height. div, h1-h6, p – блочные. display: inline ― элемент занимает минимальную ширину, и не прерывает строку, игнорирует width, height. span, img, a – строчные. display: table-cell ― как ячейка таблицы Отображение элементов 32
  • 33. <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> DIV vs SPAN 33
  • 34. float ― задает правила обтекания элемента clear ― отменяет обтекание начиная с элемента float & clear 34
  • 35. <div class="outer"> <div class="sqr fl"></div> ... <div class="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> float & clear 35
  • 36. position: static ― обычное расположение position: relative ― относительно начального местоположения на странице (смещение) position: absolute ― если родитель relative, absolute или fixed – относительно родителя, иначе - относительно начала документа (страницы) position: fixed ― относительно окна браузера top/right/bottom/left ― отступы, могут быть отрицательными Позиционирование и flow 36
  • 37. margin: 10px margin: 10px 5px; margin: 1px 2px 3px 4px; margin-left: 10px; Box model 37 width width box-sizing: content-box (по умолчанию) box-sizing: border-box
  • 39. • Шаблон страниц • Стили «по умолчанию» • Сетка • Верстка: таблицы, формы, списки, кнопки, … • Компоненты: навигация, меню, пагинатор, … • JavaScript плагины: модальные окна, вкладки, подсказки, выпадающие списки… И все это с примерами! Что включает Bootstrap 39
  • 40. Сетка (grid) 40 <div class="row-fluid"> <div class="span4">...</div> <div class="span8">...</div> </div>
  • 41. Шаблон сайта (layout) 41 <div class="container-fluid"> <div class="row-fluid"> <div class="span8">...</div> <div class="span4">...</div> </div> </div>
  • 42. Сетка (grid) 42 <div class="row-fluid"> <div class="span4">...</div> <div class="span4 offset4">...</div> </div> <div class="row-fluid"> <div class="span3 offset3">...</div> <div class="span3 offset3">...</div> </div>
  • 43. Таблицы 43 <table class="table table-bordered">…</table> table – базовые стили table-striped – «в полоску» table-bordered – с границами table-hover – подсветка текущей строки table-condensed – более компактная верстка
  • 47. Во внешнем файле <script type="text/javascript" src="/common.js"> Внутри тэга <script>alert('hello');</script> Обработчик события <a onclick="alert('hello'); return False;"></a> Как использовать Javascript?
  • 48.
  • 49. Jquery — Основные особенности Выбор элементов по css селектору $('.class li'); Обработка событий $('.button').click(function(){...}); Простые манипуляции с элементами $('.answer').parent().hide(); Отправка асинхронных запросов $.ajax(); $.get(); $.post(); http://api.jquery.com/
  • 50. 50 Домашняя работа Сверстать 1 страницу проекта в статике
  • 52. Спасибо за внимание Сергей Лихобабин, s.lihobabin@corp.mail.ru