React Bootstrap Display
React Display - Bootstrap 4 & Material Design
Note: This documentation is for an older version of Bootstrap (v.4). A
newer version is available for Bootstrap 5. We recommend migrating to the latest version of our product - Material Design for
Bootstrap 5.
Go to docs v.5
React Bootstrap display is a property which applies to many elements and specifies the type of rendering box used for an element.
Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing.
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
xl
, have no breakpoint a 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
andxl
.
Where value is one of:
-
none
-
inline
-
inline-block
-
block
-
table
-
table-cell
-
table-row
-
flex
-
inline-flex
The media queries effect screen widths with the given breakpoint
or larger. For example,
.d-lg-none
sets
display: none;
on both
lg
and
xl
screens.
Examples
Put them to use by applying any of the classes to an element of your choice. For example, here’s how you could use the inline, block, or inline-block utilities (the same applies to the other classes).
import React from "react";
const DisplayPage = () => {
return (
<>
<div className="d-inline p-2 m-1 bg-primary text-white">Inline</div>
<div className="d-inline p-2 m-1 bg-dark text-white">Inline</div>
</>
);
}
export default DisplayPage;
import React from "react";
const DisplayPage = () => {
return (
<>
<span className="d-block p-2 bg-primary text-white">Block</span>
<span className="d-block p-2 bg-dark text-white">Block</span>
</>
);
}
export default DisplayPage;
inline-block
Boot that strap!inline-block
Strap that boot!
import React from "react";
const DisplayPage = () => {
return (
<>
<div className="d-inline-block bg-primary text-white">
<h3>inline-block</h3>
Boot that strap!
</div>
<div className="d-inline-block bg-primary text-white">
<h3>inline-block</h3>
Strap that boot!
</div>
</>
);
}
export default DisplayPage;
Responsive templates
The most common usages of hidden utilities in the responsive web design.
Hidden on the screens smaller than | |
---|---|
sm down (<576px) | .d-none .d-sm-block |
md down (<768p) | .d-none .d-md-block |
lg down (<992p) | .d-none .d-lg-block |
xl down (<1200px) | .d-none .d-xl-block |
Hidden on the screens wider than | |
---|---|
sm up (>576px) | .d-block .d-sm-none |
md up (>768p) | .d-block .d-md-none |
lg up (>992p) | .d-block .d-lg-none |
xl up (>1200px) | .d-block .d-xl-none |
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 element responsively for each screen size.
To hide elements simply use the
.d-none
class or one of the
.d-{sm,md,lg,xl}-none
classes for any responsive screen variation.
To show an element only on a given interval of screen sizes you can combine one
.d-*-none
class with a
.d-*-* class
, for example
.d-none .d-md-block .d-xl-none
will hide the element for all screen sizes except on medium and large
devices.
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
|
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
|
import React from "react";
const DisplayPage = () => {
return (
<>
<div className="d-lg-none">hide on screens wider than lg</div>
<div className="d-none d-lg-block">hide on screens smaller than lg</div>
</>
);
}
export default DisplayPage;
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-table
-
.d-print-table-row
-
.d-print-table-cell
-
.d-print-flex
-
.d-print-inline-flex
The print and display classes can be combined.
Screen Only (Hide on print only)
Print Only (Hide on screen only)
Hide up to large on screen, but always show on print
import React from "react";
const DisplayPage = () => {
return (
<>
<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>
</>
);
}
export default DisplayPage;