SlideShare a Scribd company logo
1 of 23
Bootstrap 3.2 
быстрая адаптивная верстка (почти) без 
знаний CSS и HTML 
Igor Sazonov @tigusigalpa 
04.10.2014 WordPress Meetup #3, Saint-Petersburg 
http://wpspb.org
Этапы создания сайта 
Бриф/ТЗ на дизайн и функционал сайта 
Отрисовка дизайна в PSD 
Верстка (HTML+CSS+JS) 
Программирование или интеграция в CMS
Из чего состоит любой HTML-сайт 
HTML 
разметка 
CSS 
стили + эффекты CSS3 
JS 
эффекты + AJAX
Из чего состоит сайт на WordPress 
HTML 
разметка 
CSS 
стили + эффекты CSS3 
JS 
эффекты + AJAX 
WordPress
Когда не было WordPress 
• Самописная CMS (у каждого программиста была своя) 
• Сайт на index.php (лапшекод, основанный на GET-параметрах, 
например index.php?id=xxx) 
• Разные мелкие CMS типа джумлы 
• DreamWeaver и подобные программы 
• ВЫВОД: WordPress на сегодняшний день унифицировал 
управление сайтами, т.е. стал единым форматом (стандартом) 
построения многих сайтов. По сути это уже фреймворк
Когда не было jQuery 
• Скрипты писались на «голом» javascript 
• Визуальных эффектов на сайтах было крайне мало и они были 
простыми 
• ВЫВОД: jQuery стал стандартом для визуальных эффектов на 
javascript для большинства сайтов
А что же делать с CSS? 
• Писать каждый раз свой CSS: долго, нудно 
• Сделать свою наработку: лень, долго, нудно, трудно, много 
• Тогда к Вам на помощь спешит Twitter Bootstrap!
Twitter Bootstrap 
Самый популярный CSS-фреймворк для верстки (втч адаптивной) сайтов, 
включающий в себя множество css-классов для быстрого построения 
html-элементов. Включает в себя jQuery-зависимые эффекты. 
Сайт с документацией: http://getbootstrap.com 
GitHub: https://github.com/twbs/bootstrap 
Текущая версия: 3.2.0 
Дата разработки: август 2011, дата выпуска: февраль 2012 
Разработчики: Mark Otto and Jacob Thornton (разработчики в компании 
Twitter)
В чем преимущества Bootstrap 
• Open-Source 
• Экономия времени верстки 
• Поддерживается мобильными устройствами 
• Возможность адаптивной верстки 
• Очень прост в применении 
• Множество примеров 
• Множество дополнений / плагинов / скинов 
• Поддерживается всеми современными браузерами 
• Много шаблонов и сайтов на WordPress используют Bootstrap
Что включено в Bootstrap 
1. CSS-файл ядра Bootstrap (используйте 
либо сжатый либо обычный) 
2. JS-файл скриптов, они требуют 
подключения jQuery 
3. Файлы шрифтов для подключения иконок 
как подключить: 3 файла 
<link rel='stylesheet' id='bootstrap-css' 
href='//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/ 
css/bootstrap.min.css' type='text/css' media='all' /> 
<script type='text/javascript' 
src='//yastatic.net/jquery/2.1.1/jquery.min.js'></scri 
pt> 
<script type='text/javascript' 
src='//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js 
/bootstrap.min.js'></script>
CSS компоненты Bootstrap 
Документация: http://getbootstrap.com/components/ 
• Иконки 
• Выпадающее меню 
• Хлебные крошки 
• Пейджинг 
• Панельки 
• Группы кнопок 
• Списки 
• итд итп
JS компоненты Bootstrap 
Документация: http://getbootstrap.com/javascript/ 
• Эффекты перехода 
• Модальные окна (всплывающие) 
• Табы 
• Тултипы (вспл. подсказки) 
• Поповеры (большие тултипы) 
• Панели предупреждения 
• Эффекты в кнопках 
• Карусель 
• итд итп
Примеры применения 
<span class="label label-default">Default</span> 
<span class="label label-primary">Primary</span> 
<span class="label label-success">Success</span> 
<span class="label label-info">Info</span> 
<span class="label label-warning">Warning</span> 
<span class="label label-danger">Danger</span>
Примеры применения 
<div class="row"> 
<div class="col-sm-6 col-md-4"> 
<div class="thumbnail"> 
<img data-src="holder.js/300x300" alt="..."> 
<div class="caption"> 
<h3>Thumbnail label</h3> 
<p>Cras justo odio, dapibus ac facilisis in, egetas…..</p> 
<p><a href="#" class="btn btn-primary" 
role="button">Button</a> <a href="#" class="btn btn-default" 
role="button">Button</a></p> 
</div> 
</div> 
</div> 
</div>
Примеры применения 
<div class="progress"> 
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="40" aria-valuemin=" 
0" aria-valuemax="100" style="width: 40%"> 
<span class="sr-only">40% Complete (success)</span> 
</div> 
</div> 
<div class="progress"> 
<div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="20" aria-valuemin=" 
0" aria-valuemax="100" style="width: 20%"> 
<span class="sr-only">20% Complete</span> 
</div> 
</div>
Примеры базовой верстки сайтов 
http://getbootstrap.com/getting-started/#examples
Сетка в Bootstrap (колонки сайта) 
Как построить адаптивную верстку. Важные моменты 
Максимум 12 колонок. Сумма префиксов должна быть равна 12 для строчки!
Сетка в Bootstrap (колонки сайта) 
Как построить адаптивную верстку. Важные моменты 
Документация: http://getbootstrap.com/css/#grid 
.col-xx-n - <div class=“col-xx-n col-xx-n col-xx-n col-xx-n”> 
Какими могут быть «xx»: 
• «xs» – extra small (mobile portrait, мобильные телефоны вертик) 
• «sm» – small (table portrait – например, iPad вертикально) 
• «md» – средние размеры экрана (низкоформатн монитор, ноутбук) 
• «lg» – широкие экраны мониторов 
Как правило md = lg и можно обойтись только md (без lg) 
Какими могут быть «n»: 
Любыми от 1 до 12, главное чтобы в сумме своего xx они давали 12 
(12 = 1 строчка!)
Сетка в Bootstrap (колонки сайта) 
Как построить адаптивную верстку. Важные моменты 
Все классы колонок .col-xx-n должны быть 
внутри класса «row»!!! 
Пример: 
<div class=“row”> 
<div class=“col-md-4”>1</div> 
<div class=“col-md-4”>2</div> 
<div class=“col-md-4”>3</div> 
</div>
Адаптивная сетка 
Как построить адаптивную верстку. Важные моменты 
Делайте несколько классов, в 
зависимости от размера устройства 
например: 
<div class=“col-xs-12 col-sm- 
6 col-md-4 col-lg-3”> 
На заметку: колонки можно делать внутри 
ЛЮБОГО элемента, просто вставьте «row»
Полезные классы-помощники 
• .container – один из основных классов в Bootstrap. Он делает сайт с 
фиксированной шириной посередине, без него сайт расползается на всю 
ширину 
• .img-rounded – применяется для тега <img> (картинки). Скругляет углы 
• .img-circle – делает изображение круглым 
• .pull-left – «флоатит» элемент к левому краю с обтеканием справа 
• .pull-right – то же самое наоборот 
• .hidden-xs, .hidden-sm, .hidden-md, .hidden-lg – скрывает элемент для нужной 
группы устройств 
• .img-responsive – часто используемый класс для <img>. Делает картинку 
адаптивной! 
• .text-left, .text-center, .text-right – тексты и их расположение (слева, по центру, 
справа)
Полезные ресурсы по Bootstrap 
• http://expo.getbootstrap.com/resources/ - список проверенных плагинов 
• http://bootstrapbay.com/blog/bootstrap-resources/ - куча всего! 
• http://builtwithbootstrap.com/ - список красивых сайтов на Bootstrap 
• https://wrapbootstrap.com/ - еще много шаблонов на Bootstrap 
• + куча сайтов из Google!
Найдите недочет 
<div class=“container”> 
<div class=“row”> 
<div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Спасибо</div> 
<div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Всем</div> 
<div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Большое!</div> 
</div> 
</div> 
.hidden-sm в помощь

More Related Content

What's hot

построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
PVasili
 
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?
buranLcme
 
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
camp_drupal_ua
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
Technopark
 
инструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэлинструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэл
PVasili
 
Axure по для создания прототипов веб-сайтов
Axure   по для создания прототипов веб-сайтовAxure   по для создания прототипов веб-сайтов
Axure по для создания прототипов веб-сайтов
Softline
 
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
2ГИС Технологии
 

What's hot (20)

Методологии верстки
Методологии версткиМетодологии верстки
Методологии верстки
 
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
построение внутренней ссылочной структуры сайта на Drupal 7 (seo). Костин ...
 
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?
 
Redis varnish js
Redis varnish jsRedis varnish js
Redis varnish js
 
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей СолодовниковРендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей Солодовников
 
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
Yury Glushkov.What should we build a website.Drupal Camp Kyiv 2011
 
All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10
All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10
All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10
 
Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?Современный фронтенд -- как не утонуть в море хайпа?
Современный фронтенд -- как не утонуть в море хайпа?
 
Web весна 2013 лекция 10
Web весна 2013 лекция 10Web весна 2013 лекция 10
Web весна 2013 лекция 10
 
Александр Баумгертнер — Преимущества БЭМ для небольших проектов и компаний
Александр Баумгертнер — Преимущества БЭМ для небольших проектов и компанийАлександр Баумгертнер — Преимущества БЭМ для небольших проектов и компаний
Александр Баумгертнер — Преимущества БЭМ для небольших проектов и компаний
 
Я ♥ Svg — Владимир Кузнецов, Engine6
Я ♥ Svg — Владимир Кузнецов, Engine6Я ♥ Svg — Владимир Кузнецов, Engine6
Я ♥ Svg — Владимир Кузнецов, Engine6
 
Basis.js - почему я не бросил разрабатывать свой фреймворк (extended)
Basis.js - почему я не бросил разрабатывать свой фреймворк (extended)Basis.js - почему я не бросил разрабатывать свой фреймворк (extended)
Basis.js - почему я не бросил разрабатывать свой фреймворк (extended)
 
инструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэлинструкция по оптимизации сайтов на Drupal херени даниэл
инструкция по оптимизации сайтов на Drupal херени даниэл
 
Unit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьерUnit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьер
 
Вёрстка по методологии БЭМ
Вёрстка по методологии БЭМВёрстка по методологии БЭМ
Вёрстка по методологии БЭМ
 
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
 
Axure по для создания прототипов веб-сайтов
Axure   по для создания прототипов веб-сайтовAxure   по для создания прототипов веб-сайтов
Axure по для создания прототипов веб-сайтов
 
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
"Webpack: 7 бед — один ответ" — Денис Измайлов, MoscowJS 17
 
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
 
Вёрстка WordPress тем - WP Kharkiv Meetup #1
Вёрстка WordPress тем - WP Kharkiv Meetup #1Вёрстка WordPress тем - WP Kharkiv Meetup #1
Вёрстка WordPress тем - WP Kharkiv Meetup #1
 

Similar to Bootstrap 3

Работа со статикой в Django
Работа со статикой в DjangoРабота со статикой в Django
Работа со статикой в Django
MoscowDjango
 
Dreamwever cs3
Dreamwever cs3Dreamwever cs3
Dreamwever cs3
JIuc
 
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид ШирмановКомпонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
MoscowJS
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSS
DataArt
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Yandex
 
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScriptCSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
Alexey Ivanov
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
Vlado Sudin
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
Vlado Sudin
 

Similar to Bootstrap 3 (20)

Работа со статикой в Django
Работа со статикой в DjangoРабота со статикой в Django
Работа со статикой в Django
 
Современная верстка с адекватными трудозатратами Максим Тимохин, технолог, И...
 Современная верстка с адекватными трудозатратами Максим Тимохин, технолог, И... Современная верстка с адекватными трудозатратами Максим Тимохин, технолог, И...
Современная верстка с адекватными трудозатратами Максим Тимохин, технолог, И...
 
Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.Артем Маркушев — HTML и CSS по кирпичикам. Детали.
Артем Маркушев — HTML и CSS по кирпичикам. Детали.
 
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
Оптимальная архитектура масштабируемого плагина WordPress на Custom Post Type...
 
Agile theming with kalatheme & panopoly
Agile theming with kalatheme & panopolyAgile theming with kalatheme & panopoly
Agile theming with kalatheme & panopoly
 
Робота з CSS. Методології, інструменти, оптимізація
Робота з CSS. Методології, інструменти, оптимізаціяРобота з CSS. Методології, інструменти, оптимізація
Робота з CSS. Методології, інструменти, оптимізація
 
Dreamwever cs3
Dreamwever cs3Dreamwever cs3
Dreamwever cs3
 
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
 
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид ШирмановКомпонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
 
Артем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSSАртем Маркушев - HTML & CSS
Артем Маркушев - HTML & CSS
 
Web deployment
Web deploymentWeb deployment
Web deployment
 
Отполифиль свой CSS - MinskCSS 2
Отполифиль свой CSS - MinskCSS 2Отполифиль свой CSS - MinskCSS 2
Отполифиль свой CSS - MinskCSS 2
 
Парсим CSS
Парсим CSSПарсим CSS
Парсим CSS
 
Drupal Vs Other
Drupal Vs OtherDrupal Vs Other
Drupal Vs Other
 
Back to Basics — Как подружить верстку с логикой? | Odessa Frontend Meetup #9
Back to Basics — Как подружить верстку с логикой? | Odessa Frontend Meetup #9Back to Basics — Как подружить верстку с логикой? | Odessa Frontend Meetup #9
Back to Basics — Как подружить верстку с логикой? | Odessa Frontend Meetup #9
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Создание веб-сайта. Курс молодого бойца
Создание веб-сайта. Курс молодого бойцаСоздание веб-сайта. Курс молодого бойца
Создание веб-сайта. Курс молодого бойца
 
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScriptCSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
CSS-в-JS, HTML-в-JS, ВСЁ-в-JS. Все гораздо проще, когда всё вокруг JavaScript
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
 
сысоев андрей
сысоев андрейсысоев андрей
сысоев андрей
 

More from The NGO Development Center

раздаточные материалы митап 30 июня 2014
раздаточные материалы митап 30 июня 2014раздаточные материалы митап 30 июня 2014
раздаточные материалы митап 30 июня 2014
The NGO Development Center
 
SMM - Екатерина Кондратьева
SMM - Екатерина КондратьеваSMM - Екатерина Кондратьева
SMM - Екатерина Кондратьева
The NGO Development Center
 

More from The NGO Development Center (20)

Делаем вебсервис из WordPress
Делаем вебсервис из WordPressДелаем вебсервис из WordPress
Делаем вебсервис из WordPress
 
рассылки
рассылкирассылки
рассылки
 
дари добро! что могут изменить 15 тысяч рублей
дари добро! что могут изменить 15 тысяч рублейдари добро! что могут изменить 15 тысяч рублей
дари добро! что могут изменить 15 тысяч рублей
 
дари добро! что могут изменить 10 тысяч рублей
дари добро! что могут изменить 10 тысяч рублейдари добро! что могут изменить 10 тысяч рублей
дари добро! что могут изменить 10 тысяч рублей
 
Доброе Похвистнево
Доброе ПохвистневоДоброе Похвистнево
Доброе Похвистнево
 
добрые города самарского региона
добрые города самарского регионадобрые города самарского региона
добрые города самарского региона
 
Добрая Самара
Добрая СамараДобрая Самара
Добрая Самара
 
Добрый октябрьск
Добрый октябрьскДобрый октябрьск
Добрый октябрьск
 
Добрый Тольятти
Добрый ТольяттиДобрый Тольятти
Добрый Тольятти
 
Добрый Псков
Добрый ПсковДобрый Псков
Добрый Псков
 
Добрый Новосибирск
Добрый НовосибирскДобрый Новосибирск
Добрый Новосибирск
 
Добрый Нижний
Добрый НижнийДобрый Нижний
Добрый Нижний
 
добрый з...
                                                                     добрый з...                                                                     добрый з...
добрый з...
 
Программа тренинга для тренеров 6-8 октября
Программа тренинга для тренеров 6-8 октябряПрограмма тренинга для тренеров 6-8 октября
Программа тренинга для тренеров 6-8 октября
 
Оптимальная архитектура плагина WordPress
Оптимальная архитектура плагина WordPressОптимальная архитектура плагина WordPress
Оптимальная архитектура плагина WordPress
 
Angular js
Angular jsAngular js
Angular js
 
раздаточные материалы митап 30 июня 2014
раздаточные материалы митап 30 июня 2014раздаточные материалы митап 30 июня 2014
раздаточные материалы митап 30 июня 2014
 
SMM - Екатерина Кондратьева
SMM - Екатерина КондратьеваSMM - Екатерина Кондратьева
SMM - Екатерина Кондратьева
 
PR некоммерческого проекта
PR некоммерческого проектаPR некоммерческого проекта
PR некоммерческого проекта
 
Security
SecuritySecurity
Security
 

Bootstrap 3

  • 1. Bootstrap 3.2 быстрая адаптивная верстка (почти) без знаний CSS и HTML Igor Sazonov @tigusigalpa 04.10.2014 WordPress Meetup #3, Saint-Petersburg http://wpspb.org
  • 2. Этапы создания сайта Бриф/ТЗ на дизайн и функционал сайта Отрисовка дизайна в PSD Верстка (HTML+CSS+JS) Программирование или интеграция в CMS
  • 3. Из чего состоит любой HTML-сайт HTML разметка CSS стили + эффекты CSS3 JS эффекты + AJAX
  • 4. Из чего состоит сайт на WordPress HTML разметка CSS стили + эффекты CSS3 JS эффекты + AJAX WordPress
  • 5. Когда не было WordPress • Самописная CMS (у каждого программиста была своя) • Сайт на index.php (лапшекод, основанный на GET-параметрах, например index.php?id=xxx) • Разные мелкие CMS типа джумлы • DreamWeaver и подобные программы • ВЫВОД: WordPress на сегодняшний день унифицировал управление сайтами, т.е. стал единым форматом (стандартом) построения многих сайтов. По сути это уже фреймворк
  • 6. Когда не было jQuery • Скрипты писались на «голом» javascript • Визуальных эффектов на сайтах было крайне мало и они были простыми • ВЫВОД: jQuery стал стандартом для визуальных эффектов на javascript для большинства сайтов
  • 7. А что же делать с CSS? • Писать каждый раз свой CSS: долго, нудно • Сделать свою наработку: лень, долго, нудно, трудно, много • Тогда к Вам на помощь спешит Twitter Bootstrap!
  • 8. Twitter Bootstrap Самый популярный CSS-фреймворк для верстки (втч адаптивной) сайтов, включающий в себя множество css-классов для быстрого построения html-элементов. Включает в себя jQuery-зависимые эффекты. Сайт с документацией: http://getbootstrap.com GitHub: https://github.com/twbs/bootstrap Текущая версия: 3.2.0 Дата разработки: август 2011, дата выпуска: февраль 2012 Разработчики: Mark Otto and Jacob Thornton (разработчики в компании Twitter)
  • 9. В чем преимущества Bootstrap • Open-Source • Экономия времени верстки • Поддерживается мобильными устройствами • Возможность адаптивной верстки • Очень прост в применении • Множество примеров • Множество дополнений / плагинов / скинов • Поддерживается всеми современными браузерами • Много шаблонов и сайтов на WordPress используют Bootstrap
  • 10. Что включено в Bootstrap 1. CSS-файл ядра Bootstrap (используйте либо сжатый либо обычный) 2. JS-файл скриптов, они требуют подключения jQuery 3. Файлы шрифтов для подключения иконок как подключить: 3 файла <link rel='stylesheet' id='bootstrap-css' href='//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/ css/bootstrap.min.css' type='text/css' media='all' /> <script type='text/javascript' src='//yastatic.net/jquery/2.1.1/jquery.min.js'></scri pt> <script type='text/javascript' src='//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js /bootstrap.min.js'></script>
  • 11. CSS компоненты Bootstrap Документация: http://getbootstrap.com/components/ • Иконки • Выпадающее меню • Хлебные крошки • Пейджинг • Панельки • Группы кнопок • Списки • итд итп
  • 12. JS компоненты Bootstrap Документация: http://getbootstrap.com/javascript/ • Эффекты перехода • Модальные окна (всплывающие) • Табы • Тултипы (вспл. подсказки) • Поповеры (большие тултипы) • Панели предупреждения • Эффекты в кнопках • Карусель • итд итп
  • 13. Примеры применения <span class="label label-default">Default</span> <span class="label label-primary">Primary</span> <span class="label label-success">Success</span> <span class="label label-info">Info</span> <span class="label label-warning">Warning</span> <span class="label label-danger">Danger</span>
  • 14. Примеры применения <div class="row"> <div class="col-sm-6 col-md-4"> <div class="thumbnail"> <img data-src="holder.js/300x300" alt="..."> <div class="caption"> <h3>Thumbnail label</h3> <p>Cras justo odio, dapibus ac facilisis in, egetas…..</p> <p><a href="#" class="btn btn-primary" role="button">Button</a> <a href="#" class="btn btn-default" role="button">Button</a></p> </div> </div> </div> </div>
  • 15. Примеры применения <div class="progress"> <div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="40" aria-valuemin=" 0" aria-valuemax="100" style="width: 40%"> <span class="sr-only">40% Complete (success)</span> </div> </div> <div class="progress"> <div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="20" aria-valuemin=" 0" aria-valuemax="100" style="width: 20%"> <span class="sr-only">20% Complete</span> </div> </div>
  • 16. Примеры базовой верстки сайтов http://getbootstrap.com/getting-started/#examples
  • 17. Сетка в Bootstrap (колонки сайта) Как построить адаптивную верстку. Важные моменты Максимум 12 колонок. Сумма префиксов должна быть равна 12 для строчки!
  • 18. Сетка в Bootstrap (колонки сайта) Как построить адаптивную верстку. Важные моменты Документация: http://getbootstrap.com/css/#grid .col-xx-n - <div class=“col-xx-n col-xx-n col-xx-n col-xx-n”> Какими могут быть «xx»: • «xs» – extra small (mobile portrait, мобильные телефоны вертик) • «sm» – small (table portrait – например, iPad вертикально) • «md» – средние размеры экрана (низкоформатн монитор, ноутбук) • «lg» – широкие экраны мониторов Как правило md = lg и можно обойтись только md (без lg) Какими могут быть «n»: Любыми от 1 до 12, главное чтобы в сумме своего xx они давали 12 (12 = 1 строчка!)
  • 19. Сетка в Bootstrap (колонки сайта) Как построить адаптивную верстку. Важные моменты Все классы колонок .col-xx-n должны быть внутри класса «row»!!! Пример: <div class=“row”> <div class=“col-md-4”>1</div> <div class=“col-md-4”>2</div> <div class=“col-md-4”>3</div> </div>
  • 20. Адаптивная сетка Как построить адаптивную верстку. Важные моменты Делайте несколько классов, в зависимости от размера устройства например: <div class=“col-xs-12 col-sm- 6 col-md-4 col-lg-3”> На заметку: колонки можно делать внутри ЛЮБОГО элемента, просто вставьте «row»
  • 21. Полезные классы-помощники • .container – один из основных классов в Bootstrap. Он делает сайт с фиксированной шириной посередине, без него сайт расползается на всю ширину • .img-rounded – применяется для тега <img> (картинки). Скругляет углы • .img-circle – делает изображение круглым • .pull-left – «флоатит» элемент к левому краю с обтеканием справа • .pull-right – то же самое наоборот • .hidden-xs, .hidden-sm, .hidden-md, .hidden-lg – скрывает элемент для нужной группы устройств • .img-responsive – часто используемый класс для <img>. Делает картинку адаптивной! • .text-left, .text-center, .text-right – тексты и их расположение (слева, по центру, справа)
  • 22. Полезные ресурсы по Bootstrap • http://expo.getbootstrap.com/resources/ - список проверенных плагинов • http://bootstrapbay.com/blog/bootstrap-resources/ - куча всего! • http://builtwithbootstrap.com/ - список красивых сайтов на Bootstrap • https://wrapbootstrap.com/ - еще много шаблонов на Bootstrap • + куча сайтов из Google!
  • 23. Найдите недочет <div class=“container”> <div class=“row”> <div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Спасибо</div> <div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Всем</div> <div class=“col-xs-12 col-sm-6 col-md-4 text-center”>Большое!</div> </div> </div> .hidden-sm в помощь