Helper classes
Besides basic typography classes, helper classes are an extra set of additional predefined classes, that can be applied to different content or layout elements and components. Helper classes are custom additions mostly, written especially for current layout, except common BS helpers. Below is a summarized table with all available classes, descriptions and content type. Flex utilities are moved to a separate page and include various examples.
Borders | ||
.border-0 |
Any element | Use this class to remove all borders from an element |
.border-[side]-0 |
Any element | Use this class to remove specific borders. Available [side] options: left , right , top , bottom . |
.border-width-0 |
Any element | Sets border width to 0. Useful for inheriting other border properties |
.border |
Any element | Adds a border to an element with pre-defined BS's default width and color properties |
.border-[size] |
Any element | Adds the border to an element. Available [size] options: 1 - default border width (1px); 2 - double width (2px); 3 - tripple width (3px) |
.border-[side]-[size] |
Any element | Same as .border-[size] , but for specific [side]: left , right , top , bottom |
.border-[color] |
Any element | Changes color of all element's borders. Supports all available color classes, including transparent option |
.border-[side]-[color] |
Any element | If you need to change color of some specific border, use this class combination. Options for [side]: left , right , top , bottom |
.rounded |
Any element | Rounds all borders. Default value is defined in $border-radius variable |
.rounded-[side] |
Any element | Rounds borders of specific [side]: top , bottom , left , right |
.rounded-0 |
Any element | Removes rounded corners from all borders |
.rounded-[side]-0 |
Any element | Removes rounded corners from specific [side]: top , bottom , left , right |
.rounded-pill |
Any element | Adds 100px border radius to all borders |
.rounded-[side]-round |
Any element | Adds 100px border radius to specific [side]: top , bottom , left , right |
.rounded-circle |
Any element | Adds 50% border radius to all borders |
Transformations | ||
.rotate-[value] |
Any element | Rotates element clockwise. Options for [value]: 45 , 90 , 180 degrees |
.rotate-[value]-inverse |
Any element | Same as .rotate-[value] , but rotation is counterclockwise. Options for [value] are the same as well |
.spinner |
Any element | Adds infinite clockwise rotation |
.spinner-reverse |
Any element | Adds infinite counterclockwise rotation |
Positioning | ||
.position-[value] |
Any element | Changes element's positiion. Available options for [value]: relative , static , absolute , fixed , sticky |
.fixed-[top, bottom] |
Any element | Position an element at the top (bottom) of the viewport, from edge to edge |
.top-[0, auto] |
All except static | Resets top property for fixed, absolute and relative opsitions |
.bottom-[0, auto] |
All except static | Resets bottom property for fixed, absolute and relative opsitions |
.left-[0, auto] |
All except static | Resets left property for fixed, absolute and relative opsitions |
.right-[0, auto] |
All except static | Resets right property for fixed, absolute and relative opsitions |
.translate-middle |
All | Applies translate(-50%, -50%) to the element. Example is floating badges, that also require .left-100 and .top-0 classes |
.translate-[x|y]-middle |
All | Same as above, but in this particular case centers only vertical or horizontal axis |
Alignment | ||
.float-[side] |
Any element | Element floating. Options for [side]: left , right sides |
.float-[breakpoint]-[side] |
Any element | Responsive variations of element floating. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.float-none |
Any element | Removes floating |
.clearfix |
Any element | Easily clear floats by adding .clearfix to the element |
.text-[side] |
Inline element, text | Element alignment. Options for [side]: left , center , right sides |
.text-[breakpoint]-[side] |
Inline element, text | Responsive variations of element alignment. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.align-[value] |
Inline element, table | Vertical alignment. Options for [value]: baseline , top , middle , bottom , text-top and text-bottom |
Images | ||
.img-fluid |
Images only | Applies max-width: 100%; and height: auto; to the image so that it scales nicely to the parent element |
.img-thumbnail |
Images only | Adds grey frame with white background color |
Sizing | ||
.wmin-[size] |
Any element | Sets a minimum width of the element in pixels. Available options for [size]: 200 , 250 , 300 , 350 , 400 , 450 , 500 , 550 , 600 pixels |
.wmin-[breakpoint]-[size] |
Any element | Responsive variations of width utilities. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.w-[25, 50, 75, 100] |
Any element | Sets a width of the element in percents |
.w-auto |
Any element | Sets the width of an element to auto (width reset) |
.w-[breakpoint]-auto |
Any element | Responsive variations of width reset utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.h-[25, 50, 75, 100] |
Any element | Sets a height of the element in percents |
.h-auto |
Any element | Sets the height of an element to auto (height reset) |
Visibility | ||
.overflow-[value] |
Containers | Content overflow utility. Available options for [value]: hidden - hides content, visible - shows content, auto - makes content scrollable |
.visible |
Containers | Makes the element invisible for the user, but visible for screen readers |
.invisible |
Containers | Can be used to toggle only the visibility of an element, meaning its display is not modified and the element can still affect the flow of the document |
.text-hide |
Text only | Helps replace an element's text content with a background image |
.sr-only |
Any element | Hides an element to all devices except screen readers |
Display | ||
.d-block |
Any element | Displays an element as a block element |
.d-[breakpoint]-block |
Any element | Responsive variations of d-block utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-inline-block |
Any element | Displays an element as an inline-level block container |
.d-[breakpoint]-inline-block |
Any element | Responsive variations of d-inline-block utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-inline |
Any element | Displays an element as an inline container |
.d-[breakpoint]-inline |
Any element | Responsive variations of d-inline utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-table |
Any element | Displays an element as a table element |
.d-[breakpoint]-table |
Any element | Responsive variations of d-table utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-table-cell |
Any element | Displays an element as a table cell element |
.d-[breakpoint]-table-cell |
Any element | Responsive variations of d-table-cell utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-flex |
Any element | Displays an element as a block-level flex container |
.d-[breakpoint]-flex |
Any element | Responsive variations of d-flex utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-inline-flex |
Any element | Displays an element as an inline-level flex container |
.d-[breakpoint]-inline-flex |
Any element | Responsive variations of d-inline-flex utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.d-none |
Any element | Hides the element (has no effect on layout) |
.d-[breakpoint]-none |
Any element | Responsive variations of d-none utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
Spacing | ||
.m-[size] |
Any element | Adds margin property to all sides. Available [size] are: 0 , 1 ~ 5px, 2 ~ 10px, 3 ~ 20px, 4 ~ 30px, 5 ~ 40px, auto |
.m-[breakpoint]-[size] |
Any element | Responsive variations of .m-[size] utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.m[l,r,t,b,x,y]-[size] |
Any element | Adds margin property to the specific side: l - left, r - right, t - top, b - bottom, x - horizontal, y - vertical. Options for the size are the same |
.m[l,r,t,b]-[breakpoint]-[size] |
Any element | Same as for .m-[breakpoint]-[size] , except x and y options |
.p-[size] |
Any element | Adds padding property to all sides. Available [size] are: 0 , 1 ~ 5px, 2 ~ 10px, 3 ~ 20px, 4 ~ 30px, 5 ~ 40px, auto |
.p-[breakpoint]-[size] |
Any element | Responsive variations of .p-[size] utility. Options for [breakpoint]: sm , md , lg , xlg screen sizes |
.p[l,r,t,b,x,y]-[size] |
Any element | Adds padding property to the specific side: l - left, r - right, t - top, b - bottom, x - horizontal, y - vertical. Options for the size are the same |
.p[l,r,t,b]-[breakpoint]-[size] |
Any element | Same as for .p-[breakpoint]-[size] , except x and y options |
.ml-2 |
Inline elements | Adds extra left margin to the element (mostly for icons and badges) |
.mr-2 |
Inline elements | Adds extra right margin to the element (mostly for icons and badges) |
Text | ||
.font-size-[value] |
Text | Sets/overrides font size. Available [value] options: base ~ 13px, xs ~ 11px; sm - 12px, lg ~ 14px |
.line-height-[value] |
Text | Makes it 20px despite the font size. Available [value] options: base , xs ; sm , lg |
Misc | ||
.cursor-[value] |
Any element | Changes cursor style. Available [value] options: move , pointer and default styles |
.shadow-none |
Any element | Removes shadow from element |
[data-fouc] |
jQuery plugins | This is an attribute that partially helps to fix FOUC issue. It sets opacity to 0 and other properties to match styled component size. So that you won't see unstyled content flashing when plugin gets initialized. |