EVOLUTION-MANAGER
Edit File: containers.md
--- layout: docs title: Containers description: Containers are a fundamental building block of Bootstrap that contain, pad, and align your content within a given device or viewport. group: layout toc: true --- ## How they work Containers are the most basic layout element in Bootstrap and are **required when using our default grid system**. Containers are used to contain, pad, and (sometimes) center the content within them. While containers *can* be nested, most layouts do not require a nested container. Bootstrap comes with three different containers: - `.container`, which sets a `max-width` at each responsive breakpoint - `.container-fluid`, which is `width: 100%` at all breakpoints - `.container-{breakpoint}`, which is `width: 100%` until the specified breakpoint The table below illustrates how each container's `max-width` compares to the original `.container` and `.container-fluid` across each breakpoint. See them in action and compare them in our [Grid example]({{< docsref "/examples/grid#containers" >}}). <table class="table"> <thead> <tr> <td class="border-dark"></td> <th scope="col"> Extra small<br> <span class="fw-normal"><576px</span> </th> <th scope="col"> Small<br> <span class="fw-normal">≥576px</span> </th> <th scope="col"> Medium<br> <span class="fw-normal">≥768px</span> </th> <th scope="col"> Large<br> <span class="fw-normal">≥992px</span> </th> <th scope="col"> X-Large<br> <span class="fw-normal">≥1200px</span> </th> <th scope="col"> XX-Large<br> <span class="fw-normal">≥1400px</span> </th> </tr> </thead> <tbody> <tr> <th scope="row" class="fw-normal"><code>.container</code></th> <td class="text-muted">100%</td> <td>540px</td> <td>720px</td> <td>960px</td> <td>1140px</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-sm</code></th> <td class="text-muted">100%</td> <td>540px</td> <td>720px</td> <td>960px</td> <td>1140px</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-md</code></th> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td>720px</td> <td>960px</td> <td>1140px</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-lg</code></th> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td>960px</td> <td>1140px</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-xl</code></th> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td>1140px</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-xxl</code></th> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td>1320px</td> </tr> <tr> <th scope="row" class="fw-normal"><code>.container-fluid</code></th> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> <td class="text-muted">100%</td> </tr> </tbody> </table> ## Default container Our default `.container` class is a responsive, fixed-width container, meaning its `max-width` changes at each breakpoint. ```html <div class="container"> <!-- Content here --> </div> ``` ## Responsive containers Responsive containers allow you to specify a class that is 100% wide until the specified breakpoint is reached, after which we apply `max-width`s for each of the higher breakpoints. For example, `.container-sm` is 100% wide to start until the `sm` breakpoint is reached, where it will scale up with `md`, `lg`, `xl`, and `xxl`. ```html <div class="container-sm">100% wide until small breakpoint</div> <div class="container-md">100% wide until medium breakpoint</div> <div class="container-lg">100% wide until large breakpoint</div> <div class="container-xl">100% wide until extra large breakpoint</div> <div class="container-xxl">100% wide until extra extra large breakpoint</div> ``` ## Fluid containers Use `.container-fluid` for a full width container, spanning the entire width of the viewport. ```html <div class="container-fluid"> ... </div> ``` ## Sass As shown above, Bootstrap generates a series of predefined container classes to help you build the layouts you desire. You may customize these predefined container classes by modifying the Sass map (found in `_variables.scss`) that powers them: {{< scss-docs name="container-max-widths" file="scss/_variables.scss" >}} In addition to customizing the Sass, you can also create your own containers with our Sass mixin. ```scss // Source mixin @mixin make-container($padding-x: $container-padding-x) { width: 100%; padding-right: $padding-x; padding-left: $padding-x; margin-right: auto; margin-left: auto; } // Usage .custom-container { @include make-container(); } ``` For more information and examples on how to modify our Sass maps and variables, please refer to [the Sass section of the Grid documentation]({{< docsref "/layout/grid#sass" >}}).