Grid System
Containers, rows, columns, and breakpoints.
About the Grid System
- Purpose — Supports responsive, flexible layouts by dividing the page into a 12-column structure for easy alignment and spacing of content
- Framework — LibGuides, LibCal, and LibAnswers are built on theBootsrap 3 Grid System
Containers
The grid system must be wrapped in one of two available containers.
Fixed-Width
.container is a responsive fixed-width container that we have customized to have a maximum width of 1400px.
<div class="container">
...
</div>
This is the primary type of container used on the library website.
Full-Width
.container-fluid is a full-width container that spans the entire width of the browser window.
<div class="container-fluid">
...
</div>
This type of container is only used on one part of the library website — the full-width image on the homepage.
Rows
Rows are used to create horizontal groups of columns.
.row must be nested under either .container or container-fluid.
<div class="container">
<div class="row">
...
</div>
</div>
Columns
The grid system supports up to 12 columns in a row. Columns are created by specifying the number of columns you wish to span.
.col-*-* must be nested under .row.
<div class="container">
<div class="row">
<div class="col-*-3">
...
</div>
<div class="col-*-9">
...
</div>
</div>
</div>
In this example, a side column and main content column use .col-*-3 and .col-*-9, respectively. Website content would then be nested under each .col-*-*.
The middle asterisk * is a placeholder for predefined responsive classes called breakpoints.
Breakpoints
Breakpoints allow for responsive layouts. They indicate how columns will rearrange depending on screen size.
xs(for phones — screens less than 768px wide)sm(for tablets — screens equal to or greater than 768px wide)md(for small laptops — screens equal to or greater than 992px wide)lg(for laptops and desktops — screens equal to or greater than 1200px wide)
<div class="container">
<div class="row">
<div class="col-md-3">
...
</div>
<div class="col-md-9">
...
</div>
</div>
</div>
In this example, both the side column .col-md-3 and main column .col-md-9 will stack vertically on xs and sm screens and will sit horizontally on md and lg screens.
Adjust the width of your browser screen to see how .col-md-3 and .col-md-9 stack and unstack in the visual representation below.
.row.col-md-3.col-md-9