Containers
Vue Bootstrap 5 Containers
Containers are a fundamental building block of Bootstrap that contain, pad, and align your content within a given device or viewport.
How it works
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. We use MDBContainer
components to
create containers.
Bootstrap comes with three different containers:
-
Just
MDBContainer
, which sets amax-width
at each responsive breakpoint -
MDBContainer with property
fluid
, which iswidth: 100%
at all breakpoints -
MDBContainer with property
{breakpoint}
, which iswidth: 100%
until the specified breakpoint
The table below illustrates how each container’s
max-width
compares to the original MDBContainer
and with
fluid
property across each breakpoint.
See them in action and compare them in our Grid example.
Extra small <576px |
Small ≥576px |
Medium ≥768px |
Large ≥992px |
X-Large ≥1200px |
XX-Large ≥1400px |
|
---|---|---|---|---|---|---|
without any property
|
100% | 540px | 720px | 960px | 1140px | 1320px |
sm
|
100% | 540px | 720px | 960px | 1140px | 1320px |
md
|
100% | 100% | 720px | 960px | 1140px | 1320px |
lg
|
100% | 100% | 100% | 960px | 1140px | 1320px |
xl
|
100% | 100% | 100% | 100% | 1140px | 1320px |
xxl
|
100% | 100% | 100% | 100% | 100% | 1320px |
fluid
|
100% | 100% | 100% | 100% | 100% | 100% |
Default container
Our default MDBContainer
component is a responsive, fixed-width container,
meaning its max-width
changes at each breakpoint.
<template>
<MDBContainer>
<!-- Content here -->
</MDBContainer>
</template>
<script>
import { MDBContainer } from 'mdb-vue-ui-kit';
export default {
components: {
MDBContainer
},
};
</script>
<script setup lang="ts">
import { MDBContainer } from 'mdb-vue-ui-kit';
</script>
Responsive containers
Responsive containers allow you to specify an property that makes the container 100% wide
until the specified breakpoint is reached, after which we apply
max-width
s for each of the higher breakpoints. For example,
sm
property makes container 100% wide to start until the
sm
breakpoint is reached, where it will scale up with md
,
lg
, xl
, and xxl
.
<template>
<MDBContainer sm>100% wide until small breakpoint</MDBContainer>
<MDBContainer md>100% wide until medium breakpoint</MDBContainer>
<MDBContainer lg>100% wide until large breakpoint</MDBContainer>
<MDBContainer xl>100% wide until extra large breakpoint</MDBContainer>
<MDBContainer xxl>100% wide until extra extra large breakpoint</MDBContainer>
</template>
<script>
import { MDBContainer } from 'mdb-vue-ui-kit';
export default {
components: {
MDBContainer
},
};
</script>
<script setup lang="ts">
import { MDBContainer } from 'mdb-vue-ui-kit';
</script>
Fluid containers
Use fluid
for a full width container, spanning the entire width of the viewport.
<template>
<MDBContainer fluid>
...
</MDBContainer>
</template>
<script>
import { MDBContainer } from 'mdb-vue-ui-kit';
export default {
components: {
MDBContainer
},
};
</script>
<script setup lang="ts">
import { MDBContainer } from 'mdb-vue-ui-kit';
</script>
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:
$container-max-widths: (
sm: 540px,
md: 720px,
lg: 960px,
xl: 1140px,
xxl: 1320px
);
In addition to customizing the Sass, you can also create your own containers with our Sass mixin.
// 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();
}