React Hover Effects

React Hover Effects - 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 hover effect appears when a user positions computer cursor over an element without activating it. Hover effects make a website more interactive.

However, we don't recommend to mix hover effects with functional elements (like dropdown on hover or hidden buttons visible only after hovering) because such approach isn't mobile-friendly.

MDB is a mobile-first framework, so we attach great importance to make each component easy to use for touch screens.

That's why our hover effects are gentle and decorative.


Basic examples

smaple image

Strong overlay

smaple image

Light overlay

smaple image

Super light overlay

smaple image

Zoom effect

Shadow effect

smaple image
        
            
          import React from "react";
          import { MDBMask, MDBView, MDBContainer, MDBRow, MDBCol } from "mdbreact";
          
          class HoverPage extends React.Component {
            render() {
              return (
                <MDBContainer className="mt-5">
                  <MDBRow>
                    <MDBCol md="4">
                      <MDBView hover>
                        <img
                          src="https://mdbootstrap.com/img/Others/documentation/forest-sm-mini.webp"
                          className="img-fluid"
                          alt=""
                        />
                        <MDBMask className="flex-center" overlay="red-strong">
                          <p className="white-text">Strong overlay</p>
                        </MDBMask>
                      </MDBView>
                    </MDBCol>
                    <MDBCol md="4">
                      <MDBView hover>
                        <img
                          src="https://mdbootstrap.com/img/Others/documentation/forest-sm-mini.webp"
                          className="img-fluid"
                          alt=""
                        />
                        <MDBMask className="flex-center" overlay="red-light">
                          <p className="white-text">Light overlay</p>
                        </MDBMask>
                      </MDBView>
                    </MDBCol>
                    <MDBCol md="4">
                      <MDBView hover>
                        <img
                          src="https://mdbootstrap.com/img/Others/documentation/forest-sm-mini.webp"
                          className="img-fluid"
                          alt=""
                        />
                        <MDBMask className="flex-center" overlay="red-slight">
                          <p className="white-text">Super light overlay</p>
                        </MDBMask>
                      </MDBView>
                    </MDBCol>
                  </MDBRow>
                  <MDBRow className="mt-4">
                    <MDBCol md="6">
                      <MDBView hover zoom>
                        <img
                          src="https://mdbootstrap.com/img/Others/documentation/img%20(131)-mini.webp"
                          className="img-fluid"
                          alt=""
                        />
                        <MDBMask className="flex-center">
                          <p className="white-text">Zoom effect</p>
                        </MDBMask>
                      </MDBView>
                    </MDBCol>
                    <MDBCol md="6">
                      <h5 className="text-center">Shadow effect</h5>
                      <img
                        src="https://mdbootstrap.com/img/Others/documentation/4.webp"
                        className="img-fluid rounded-circle hoverable"
                        alt=""
                      />
                    </MDBCol>
                  </MDBRow>
                </MDBContainer>
              );
            }
          }
          
          export default HoverPage;
        
        
    

Usage

Step 1: Create a wrapper containing component <MDBView>.

        
            
            <MDBView>
              ...
            </MDBView>
        
        
    

Step 2: Add a prop of the effect you want to use (for example hover or zoom).

        
            

            <MDBView hover zoom>
                ...
            </MDBView>

        
        
    

Step 3: Set a path to the image by adding src attribute.

        
            
            <MDBView hover zoom>
              <img
                src="https://mdbootstrap.com/img/Others/documentation/img%20(131)-mini.webp"
                className="img-fluid"
                alt=""
              />
            </MDBView>
        
        
    

Step 4: Add a component <MDBMask> to cover the image with the overlay and choose color and intensity of the overlay.

        
            
          <MDBView hover zoom>
              <img
                src="https://mdbootstrap.com/img/Others/documentation/img%20(131)-mini.webp"
                className="img-fluid"
                alt=""
              />
              <MDBMask overlay="red-slight">
              </MDBMask>
            </MDBView>
        
        
    

Step 5: If you want to add some text, you can use a prop flex-center to center it, and text to give your text a stronger contrast and make it more visible.

        
            

            <MDBView hover zoom>
              <img
                src="https://mdbootstrap.com/img/Others/documentation/img%20(131)-mini.webp"
                className="img-fluid"
                alt=""
              />
              <MDBMask className="flex-center" overlay="red-slight">
                <p className="white-text">Super light overlay</p>
              </MDBMask>
            </MDBView>

        
        
    

Colors and intensity

Use one of the <MDBMask> overlay prop to change the color and intensity.


Strong overlay


Image with a strong blue overlay.

blue-strong

Image with a strong red overlay.

red-strong

Image with a strong pink overlay.

pink-strong

Image with a strong purple overlay.

purple-strong

Image with a strong indigo overlay.

indigo-strong

Image with a strong cyan overlay.

cyan-strong

Image with a strong teal overlay.

teal-strong

Image with a strong green overlay.

green-strong

Image with a strong lime overlay.

lime-strong

Image with a strong yellow overlay.

yellow-strong

Image with a strong orange overlay.

orange-strong

Image with a strong brown overlay.

brown-strong

Image with a strong grey overlay.

grey-strong

Image with a strong blue-grey overlay.

blue-grey-strong

Image with a strong black overlay.

black-strong

Image with a strong stylish overlay.

stylish-strong

Image with a strong white overlay.

white-strong


Light overlay


Image with a light blue overlay.

blue-light

Image with a light red overlay.

red-light

Image with a light pink overlay.

pink-light

Image with a light purple overlay.

purple-light

Image with a light indigo overlay.

indigo-light

Image with a light cyan overlay.

cyan-light

Image with a light teal overlay.

teal-light

Image with a light green overlay.

green-light

Image with a light lime overlay.

lime-light

Image with a light yellow overlay.

yellow-light

Image with a light orange overlay.

orange-light

Image with a light brown overlay.

brown-light

Image with a light grey overlay.

grey-light

Image with a light blue-grey overlay.

blue-grey-light

Image with a light black overlay.

black-light

Image with a light stylish overlay.

stylish-light

Image with a light white overlay.

white-light


Super light overlay


Image with a slight blue overlay.

blue-slight

Image with a slight red overlay.

red-slight

Image with a slight pink overlay.

pink-slight

Image with a slight purple overlay.

purple-slight

Image with a slight indigo overlay.

indigo-slight

Image with a slight cyan overlay.

cyan-slight

Image with a slight teal overlay.

teal-slight

Image with a slight green overlay.

green-slight

Image with a slight lime overlay.

lime-slight

Image with a slight yellow overlay.

yellow-slight

Image with a slight orange overlay.

orange-slight

Image with a slight brown overlay.

brown-slight

Image with a slight grey overlay.

grey-slight

Image with a slight blue-grey overlay.

blue-grey-slight

Image with a slight black overlay.

black-slight

Image with a slight stylish overlay.

stylish-slight

Image with a slight white overlay.

white-slight

React Hover Effects - API

In this section you will find advanced information about the Hover Effects in MDB.


Import statement

In order to use Hover Effects make sure you have imported proper modules first.

        
            
          import { MDBView, MDBMask } from "mdbreact";
        
        
    

API Reference: View Properties

The table below shows the configuration options of the MDBView component.

Name Type Default Description Example
cascade Boolean false Places content cascade <MDBView cascade />
className String Adds custom classes <MDBView className="customClass" />
hover Boolean false Switches on hover effects <MDBView hover />
rounded Boolean false Sets View's border-radius to 50% <MDBView rounded />
src String Sets fixed image backround; accepts url to your image <MDBView src="/assets/image.webp" />
tag String div Changes default tag <MDBView tag="span" />
waves Boolean false Switches on waves effect (on mouse up) <MDBView waves />
zoom Boolean false Switch on zomm efect (on hover) <MDBView zoom />

API Reference: Mask Properties

The table below shows the configuration options of the MDBMask component.

Name Type Default Description Example
className String Adds custom classes <MDBMask className="customClass" />
overlay String Creates overlay in passed color; for colors list check Mask's docs <MDBMask overlay="grey-light" />
pattern String/Number Creates pattern with chosen style; for patterns list check Mask's docs <MDBMask pattern="1" />
tag String div Changes default tag <MDBMask tag="span" />