# Primer CSS Layout [![NPM version](http://img.shields.io/npm/v/primer-layout.svg)](https://www.npmjs.org/package/primer-layout) [![Build Status](https://travis-ci.org/primer/primer-layout.svg?branch=master)](https://travis-ci.org/primer/primer-layout) > Primer’s layout includes basic page containers and a single-tiered, fraction-based grid system. That sounds more complicated than it really is though—it’s just containers, rows, and columns. This repository is a module of the full [primer-css][primer-css] repository. ## Install This repository is distributed with [npm][npm]. After [installing npm][install-npm], you can install `primer-layout` with this command. ``` $ npm install --save primer-layout ``` ## Usage The source files included are written in [Sass][sass] (`scss`) You can simply point your sass `include-path` at your `node_modules` directory and import it like this. ```scss @import "primer-layout/index.scss"; ``` You can also import specific portions of the module by importing those partials from the `/lib/` folder. _Make sure you import any requirements along with the modules._ ## Build For a compiled **css** version of this module, a npm script is included that will output a css version to `build/build.css` The built css file is also included in the npm package. ``` $ npm run build ``` ## Documentation Primer's layout includes basic page containers and a single-tiered, fraction-based grid system. That sounds more complicated than it really is though—it's just containers, rows, and columns. You can find all the below styles in `_layout.scss`. #### Container Center your page's contents with a `.container`. ```html+erb
``` The container applies `width: 980px;` and uses horizontal `margin`s to center it. #### Grid ##### How it works The grid is pretty standard—you create rows with `.columns` and individual columns with a column class and fraction class. Here's how it works: - Add a `.container` to encapsulate everything and provide ample horizontal gutter space. - Create your outer row to clear the floated columns with `
`. - Add your columns with individual `
`s. - Add your fractional width classes to set the width of the columns (e.g., `.one-fourth`). ##### Demo In practice, your columns will look like the example below. ```html
.one-fifth
.four-fifths
.one-fourth
.three-fourths
.two-thirds
.one-half
.one-half
``` ##### Centered Columns can be [centered](/utilities/#centering-content) by adding `.centered` to the `.column` class. ```html
.one-half
``` ## License [MIT](./LICENSE) © [GitHub](https://github.com/) [primer-css]: https://github.com/primer/primer [docs]: http://primercss.io/ [npm]: https://www.npmjs.com/ [install-npm]: https://docs.npmjs.com/getting-started/installing-node [sass]: http://sass-lang.com/