28
Building beautiful websites with Bootstrap: A case study by Michael Kennedy DevelopMentor | @mkennedy | michaelckennedy.net

Building beautiful websites with bootstrap a case study (DevelopMentor webcast)

Embed Size (px)

DESCRIPTION

Bootstrap has literally changed the game when it comes to web design. This is especially true for developers who have traditionally struggled to build beautiful and engaging sites. With Bootstrap, developers can now start from a good design and evolved. This webcast look at how we at DevelopMentor have used bootstrap to completely redesign our website. We'll take you through a quick introduction to bootstrap and then look at the various ways we have made use of it's simple and productive design foundation. Watch the video and get the downloads here: http://www.develop.com/webcasts/watch/5260173ad588bf08f82ac92f/building-beautiful-websites-with-bootstrap-a-case-study

Citation preview

Page 1: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Building beautiful websites with Bootstrap: A case study

by Michael KennedyDevelopMentor | @mkennedy | michaelckennedy.net

Page 2: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Objectives

● Learn what Bootstrap has to offer web developers

● Install and use Bootstrap

● Learn the major components / features of Bootstrap

● See a real-world application of these features to a website redesign

Page 3: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

● Bootstrap is a web front-end framework● With bootstrap you start from a beautiful site and add to it● Bootstrap is the designer we never had (who is never late)● Bootstrap solves cross browser compat via a reset css● Bootstrap is comprised of

○ CSS (available via LESS)○ JavaScript○ Fonts (which stand in for images)

● Open-source on Github● Created by two guys who work at Twitter.

What is Bootstrap? Why do you need it?

Page 4: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

How do you get Bootstrap?

Page 6: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

JavaScript:

Transitions

Modal

Dropdown

Scrollspy

Tab

Tooltip

Popover

Alert

Button

Collapse

Carousel

Affix

A brief tour of BootstrapComponents:

Glyphicons

Dropdowns

Button groups

Button dropdowns

Input groups

Navs

Navbar

Breadcrumbs

Pagination

Labels

CSS:

Grid system

Typography

Code

Tables

Forms

Buttons

Images

Helper classes

Responsive utilities

Badges

Jumbotron

Page header

Thumbnails

Alerts

Progress bars

Media object

List group

Panels

Wells

Page 7: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

How did we use Bootstrap at develop.com?

Page 8: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

JavaScript:

Transitions

ModalDropdownScrollspy

Tab

Tooltip

Popover

Alert

Button

CollapseCarousel

Affix

A brief tour of Bootstrap: What we're coveringComponents:

GlyphiconsDropdownsButton groups

Button dropdowns

Input groups

NavsNavbarBreadcrumbs

Pagination

Labels

CSS:

Grid system

TypographyCode

TablesFormsButtonsImagesHelper classes

Responsive utilities

Badges

JumbotronPage header

Thumbnails

Alerts

Progress bars

Media object

List group

Panels

Wells

Page 9: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<a

class="label label-warning"

href="/course/iOS">iOS</a>

Labels

Page 10: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<button class="btn btn-danger">Subscribe</button>

<a class="btn btn-success" href="...">Request onsite</a>

Buttons

Page 11: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<img class="img-circle"

src="/technicalstaff/image/Pierre_Nallet.jpg">

Images

Page 12: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Jumbotrons (AKA hero units)

Page 13: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<section class="jumbotron">

<div class="container">

<h2 class="mission-statement">

We develop people<br>

who develop software

</h2>

<div class="visible-sm visible-xs"></div>

<img class="jumbotron-image" src="/images/macbook-pro-vs.jpg">

</div>

</section>

Jumbotrons (AKA hero units)

Page 14: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<blockquote>

<p>Brock Allen was a brilliant instructor....</p>

<small>Kexin Sun, <cite>Carefusion Corporation</cite></small>

</blockquote>

Blockquotes

Page 15: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<form action="/store/register/..." method="post">

<strong>Credit Card Details</strong>

<div class="form-group">

<div>

<label class="form-label" for="CreditCardNumber">Card Number</label>

<input class="form-control" data-val="true" type="text"></div>

</div>

</div>

</form>

Forms

Page 16: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<table class="table table-striped course-list">

<!-- ... -->

</table>

Tables

Page 17: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<div class="well">

<h2>Full course curriculum at DevelopMentor</h2>

<div>...</div>

</div>

Wells

Page 19: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<div id="upcoming-classes-dialog" class="modal fade" tabindex="-1" role="dialog">

<div class="modal-dialog">

<div class="modal-content">

<div class="modal-header">

<button type="button" class="close" data-dismiss="modal">&times;</button>

<h4 class="modal-title">...</h4>

</div>

<div class="modal-body">

...

</div>

<div class="modal-footer">

<button type="button" class="btn btn-success" data-dismiss="modal">Close</button>

</div>

</div><!-- /.modal-content -->

</div><!-- /.modal-dialog →

</div>

Dialogs

Page 20: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<a class='btn ...' data-toggle='modal' href='#upcoming-classes-dialog'>Upcoming classes</a>

<div id="upcoming-classes-dialog" class="modal fade" tabindex="-1" role="dialog">

...

</div>

Dialogs

Page 21: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<header>

<nav class="navbar navbar-inverse navbar-default">

...

</nav>

</header>

Navigation

Page 22: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<nav class="main navbar navbar-inverse navbar-default">

<div>

<a class="navbar-brand" href="/">DEVELOPMENTOR ...</a>

</div>

<ul class="nav navbar-nav">

<li><a href="...">Classroom</a></li>

<li><a href="...">Online</a></li>

<li><a href="...">Courses</a></li>

...

<li> class="dropdown">

...

</li>

</ul>

</nav>

Navigation

Page 23: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

<nav class="main navbar navbar-inverse navbar-default"> ...

<ul class="nav navbar-nav"> ...

<li class="dropdown">

<a class="dropdown-toggle" data-toggle="dropdown" href="#">

More <span class="glyphicon glyphicon-circle-arrow-down"></span>

</a>

<ul class="dropdown-menu" role="menu">

<li><a href="...">Training curriculum</a></li>

<li><a href="...">Public course schedule</a></li>

...

</ul>

</li>

</ul>

</nav>

Navigation

Page 24: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Responsive utilities

Page 25: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Responsive utilitiesUsing the responsive classes allow us to keep the key navigation on the screen on smaller devices without creating an overly crowded navigation:

wide

medium

small

phone

Page 26: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Responsive utilities

Using the responsive classes allow us to keep the key navigation on the screen on smaller devices without creating an overly crowded navigation:

<li class="hidden-sm"><a href="...">Classroom</a></li>

<li class="hidden-sm"><a href="...">Online</a></li>

<li><a href="...">Courses</a></li>

<li class="hidden-sm hidden-md"><a href="...">Search</a></li>

Page 27: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Regrets

I wish I would have:

1. Used LESS for our CSS and built on Bootstrap's LESS foundation.

2. Learned and used the responsive utilities earlier.

Page 28: Building beautiful websites with bootstrap  a case study (DevelopMentor webcast)

Summary: Bootstrap, a case study

● Bootstrap is that designer you always which you had (or were)

● Installing Bootstrap is easy (getbootstrap.com or NuGet)

● Bootstrap offers a wide range of features from CSS layouts, to styles, to

behaviors driven via data-* attributes.

● We saw a real-world application of these features to a website redesign