Display property
How it works
Change the value of the display property with our responsive display utility classes. We purposely support only a subset of all possible values for display. Classes can be combined for various effects as you need.
Notation
Display utility classes that apply to all breakpoints, from xs to xxl, have no breakpoint abbreviation in them. This is because those classes are applied from min-width: 0; and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.
As such, the classes are named using the format:
.d-{value}forxs.d-{breakpoint}-{value}forsm,md,lg,xl, andxxl.
Where value is one of:
noneinlineinline-blockblockgridinline-gridtabletable-celltable-rowflexinline-flex
The display values can be altered by changing the display values defined in $utilities and recompiling the SCSS.
The media queries affect screen widths with the given breakpoint or larger. For example, .d-lg-none sets display: none; on lg, xl, and xxl screens.
Examples
<div> <div className="d-inline p-2 text-bg-primary">d-inline</div> <div className="d-inline p-2 text-bg-dark">d-inline</div> </div>
<div> <span className="d-block p-2 text-bg-primary">d-block</span> <span className="d-block p-2 text-bg-dark">d-block</span> </div>
Hiding elements
For faster mobile-friendly development, use responsive display classes for showing and hiding elements by device. Avoid creating entirely different versions of the same site, instead hide elements responsively for each screen size.
To hide elements simply use the .d-none class or one of the .d-{sm,md,lg,xl,xxl}-none classes for any responsive screen variation.
| Screen size | Class |
|---|---|
| Hidden on all | .d-none |
| Hidden only on xs | .d-none .d-sm-block |
| Hidden only on sm | .d-sm-none .d-md-block |
| Hidden only on md | .d-md-none .d-lg-block |
| Hidden only on lg | .d-lg-none .d-xl-block |
| Hidden only on xl | .d-xl-none .d-xxl-block |
| Hidden only on xxl | .d-xxl-none |
| Visible on all | .d-block |
| Visible only on xs | .d-block .d-sm-none |
| Visible only on sm | .d-none .d-sm-block .d-md-none |
| Visible only on md | .d-none .d-md-block .d-lg-none |
| Visible only on lg | .d-none .d-lg-block .d-xl-none |
| Visible only on xl | .d-none .d-xl-block .d-xxl-none |
| Visible only on xxl | .d-none .d-xxl-block |
<div> <div className="d-lg-none">hide on lg and wider screens</div> <div className="d-none d-lg-block">hide on screens smaller than lg</div> </div>
Display in print
Change the display value of elements when printing with our print display utility classes. Includes support for the same display values as our responsive .d-* utilities.
.d-print-none.d-print-inline.d-print-inline-block.d-print-block.d-print-grid.d-print-inline-grid.d-print-table.d-print-table-row.d-print-table-cell.d-print-flex.d-print-inline-flex
The print and display classes can be combined.
<div> <div className="d-print-none">Screen Only (Hide on print only)</div> <div className="d-none d-print-block">Print Only (Hide on screen only)</div> <div className="d-none d-lg-block d-print-block"> Hide up to large on screen, but always show on print </div> </div>