Close Menu

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    What's Hot

    How to Create Animated Bicycle Product Card using HTML & CSS

    1 June 2025

    How to make Happy birthday cake Animation using HTML & CSS

    29 May 2025

    How to create Toast Catcher Game using HTML CSS and JS

    26 May 2025
    Facebook X (Twitter) Instagram YouTube Telegram Threads
    Coding StellaCoding Stella
    • Home
    • Blog
    • HTML & CSS
      • Login Form
    • JavaScript
    • Hire us!
    Coding StellaCoding Stella
    Home - JavaScript - How to make Card Mouse Hover Effect using HTML CSS & JavaScript
    JavaScript

    How to make Card Mouse Hover Effect using HTML CSS & JavaScript

    Coding StellaBy Coding Stella14 October 2024No Comments14 Mins Read
    Share Facebook Twitter Pinterest LinkedIn Tumblr Reddit Email WhatsApp Copy Link

    Let’s create a Card Mouse Hover Effect using HTML, CSS, and JavaScript. This project will feature interactive cards that respond to mouse hover events, adding animations or visual transformations to engage the user.

    We’ll use HTML to structure the cards, CSS to style them, and JavaScript to add dynamic hover effects, such as moving the card or changing its appearance when the mouse hovers over it.

    Let’s get started on building the Card Mouse Hover Effect. Whether you’re a beginner or an experienced developer, this project will help enhance your web development skills and create engaging, interactive elements for your website.

    HTML :

    This code creates a webpage that displays a series of cards, each representing a different flower with a detailed description of it. The structure includes an HTML document with links to external CSS and JavaScript files for styling and behavior. Each card contains a title and a descriptive paragraph about flowers like roses, tulips, and sunflowers, with the layout designed to be responsive and visually appealing. The cards have a hover effect and are structured within a section using divs and classes for easy styling.

    <!DOCTYPE html>
    <html lang="en" >
    <head>
      <meta charset="UTF-8">
      <link rel="stylesheet" href="./style.css">
      <meta name='viewport' content='width=device-width, initial-scale=1'>
      <link rel="preconnect" href="https://fonts.googleapis.com">
      <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
      <link href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap" rel="stylesheet">
    
      <title>Card Mouse Hover Effect</title>
    
    </head>
    <body>
    
      <section>
        <div class="container max-w-5xl mx-auto px-8">
          <div class="card-wraper">
            <div class="background" id="background"></div>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Rose</h3>
                    <p>A type of flowering shrub, its name comes from the Latin word Rosa. The rose has been
                      a symbol of love, beauty, war, and
                      politics. The rose plant can be erect shrubs, climbing, or trailing, with stems that
                      are often armed with sharp
                      prickles. Flowers vary in size and shape and are usually large and showy, in colors
                      ranging from white through yellows
                      and reds. Most species are native to Asia, with smaller numbers native to Europe,
                      North America, and northwestern
                      Africa.Roses are often grown as ornamental plants for their beautiful and sometimes
                      fragrant flowers. They are popular garden
                      plants but are sometimes grown indoors and are used as cut flowers.The rose species,
                      China rose (Rosa chinensis), has been used in traditional Chinese medicine. The
                      roots and fruits are
                      used for arthritis, joint pains, coughs, and skin wounds and infections. The flower
                      buds are used to stimulate blood
                      flow and help with chest and abdominal pain.Rose water is commonly used in Middle
                      Eastern and Indian cooking, especially in sweets such as baklava, nougat, and
                      Turkish delight.</p>
                  </div>
                </div>
              </div>
            </a>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Tulip</h3>
                    <p>Tulips are spring-blooming perennials that grow from bulbs. Depending on the species,
                      tulip plants can grow as short as
                      4 inches (10 cm) or as high as 28 inches (71 cm). The tulip's large flowers usually
                      bloom on scapes or subscapose stems
                      that lack bracts. Most tulips produce only one flower per stem, but a few species
                      bear multiple flowers on their scapes
                      (e.g., Tulipa turkestanica). The showy, generally cup- or star-shaped tulip flower
                      has three petals and three sepals,
                      which are often termed tepals because they are nearly identical.Tulip bulbs are
                      measured in centimeters around the "waist" of the bulb. Longfield Gardens supplies
                      tulip bulbs that are
                      at least 12cm in circumference. This ensures you will always get the biggest,
                      brightest blooms.Tulip bulbs should be planted in mid to late fall, any time after
                      the first frost and before the ground freezes. For
                      best results, plant the bulbs within a month after you receive them.Plant tulip
                      bulbs 6" to 8" deep and 4" to 5" apart on center. You may plant the bulbs
                      individually, or can dig out a
                      larger area and plant a number of bulbs at once. Position the bulbs with the pointy
                      end up and then cover them with
                      soil. Fall and winter rains usually provide adequate moisture. Water only if the
                      weather is very dry.</p>
                  </div>
                </div>
              </div>
            </a>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Sunflower</h3>
                    <p>Sunflowers are known for being “happy” flowers, making them the perfect gift to bring
                      joy to someone’s (or your) day.The common sunflower has a green erect stem covered
                      in coarse hairs, growing on average around 2m tall. The leaves are
                      broad, with serrated edges, and are alternately arranged on the stem. The ‘flower’
                      of the common sunflower is actually a
                      pseudanthium, or flowerhead, made up of many small flowers. The outer yellow
                      ‘petals’ on the flowerhead are known as ray
                      flowers and are made up of multiple petals fused together. Ray petals are usually
                      yellow but can sometimes be red or
                      orange. The black-brown flowers in the centre of the head, called disk flowers, grow
                      in a spiral formation, and mature
                      into sunflower seeds over time.Sunflower seeds are processed to create sunflower
                      oil, a cooking oil that is both cheap to produce and high in
                      unsaturated fats.Sunflower seeds are eaten both raw and roasted as a snack. They can
                      also be processed to create sunflower butter, an
                      alternative to peanut butter.Sunflower oil can be processed into margarine.Some
                      Native American peoples use ground sunflower seeds to make bread-like products.Did
                      you know? Sunflower petals are edible, but they aren't widely eaten due to their
                      flavour.</p>
                  </div>
                </div>
              </div>
            </a>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Daisy</h3>
                    <p>Daisies are simple yet sophisticated and are some of the most beautiful flowers in
                      the floral world.Daisy plants often grow to about 2 to 3 feet (61 to 91 centimeters)
                      tall. The flowers grow on long stalks. Two types of
                      flower make up each flower head. Ray flowers are what people call petals. The ray
                      flowers may be long or short. Tiny
                      disk flowers make up the center. The center may be flat or rounded. Depending on the
                      type of daisy, the flower heads are
                      from 1 to 4 inches (2.5 to 10 centimeters) wide.Oxeye and Shasta daisies have a ring
                      of white ray flowers around a bright yellow center. The ray flowers of the English
                      daisy may be white, purple, pink, or red.With its soft, pearly white petals
                      radiating from a golden center, the Shasta daisy is a timeless classic. Not is it
                      only one of the largest daisies, but it is also one of the easiest to grow and care
                      for. Plus, you can enjoy its hearty
                      blooms season after season.The sweet simplicity and genuine beauty of the daisy have
                      made the flower an international emblem of innocence and
                      purity. Its fresh, crisp appearance has come to symbolize new beginnings, and its
                      bright, spirit-lifting colors are
                      known to spread happiness like wildfire. It’s for these reasons that daisies make
                      the perfect gifts and decorations for
                      celebrating all of life’s biggest milestone events.</p>
                  </div>
                </div>
              </div>
            </a>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Orchid</h3>
                    <p>Orchids are delicate, exotic and graceful. They represent love, luxury, beauty and
                      strength.Orchids are plants prized for their beautiful and unique flowers. Orchids
                      make up one of the world’s largest plant
                      families, with between 15,000 and 35,000 species, or types. Many people grow orchids
                      as a hobby.
                      Orchids grow in most parts of the world except for the areas near the North and
                      South poles. Most orchids prefer warm,
                      tropical areas. Orchids can grow in soil, completely underground, or on other plants
                      or rocks. The species that grow on
                      other plants or rocks do not have their roots in soil. Instead, their roots dangle
                      in the air or cling to the plant or
                      rock. They get moisture and nutrients from rainwater, rotting plant matter, or the
                      air.
                      Orchid plants can measure from less than an inch (2.5 centimeters) to more than 15
                      feet (4.6 meters) tall. There can be
                      a single flower or clusters. The flowers can be as small as 0.1 inch (2.5
                      millimeters) or as large as 15 inches (38
                      centimeters) across. They can be almost any color, and some have spots or streaks.
                      Many have a strong fragrance, or
                      smell, but some have no fragrance at all.
                      The flavoring known as vanilla comes from the seedpods of some orchid plants. It is
                      used in baked goods and beverages,
                      and it is an ingredient in perfumes as well.</p>
                  </div>
                </div>
              </div>
            </a>
            <a href="javascript:void(0)" class="card relative group block p-2 h-full w-full">
              <div class="card-main">
                <div class="card-inner">
                  <div>
                    <h3>Chrysanthemum</h3>
                    <p>Chrysanthemum flowers come in a variety of sizes, ranging from 5 to 8 centimeters in
                      diameter. Chrysanthemums are
                      composite flowers that grow in varying petal arrangements, with some types having a
                      daisy-like structure, others having
                      a rounder, pompom-like appearance, and even some blooms with quill-like petals. The
                      blossoms also have varying hues,
                      from white and light yellow to deep burgundies and purples. Chrysanthemums have a
                      sweet and floral scent with notes of
                      menthol that clear the nasal passages. The flavor profile of Chrysanthemums may
                      differ depending on the variety, but
                      commonly the blossoms have bitter and floral nuances with sweet and peppery
                      undertones.Chrysanthemum flower is the generalized term for thousands of commonly
                      grown perennials, affectionately known as mums.
                      These species of flowering plants are members of the daisy family and bloom in a
                      vast array of colors and shapes. All
                      mum flowers are edible, with the most common variety, pictured above, being Garland
                      chrysanthemums, botanically
                      classified as Chrysanthemum coronarium. This variety is also grown for its leafy
                      greens and succulent stems, known as
                      Shungiku in many Asian cultures. Garland chrysanthemums are one of the only
                      varieties whose greens are edible. Other
                      species of Chrysanthemum greens can cause contact dermatitis when handled without
                      gloves and may result in digestive
                      irritation when consumed. Chrysanthemum flowers produce a natural pesticide that
                      helps with pest control in home gardens
                      but is also toxic to household pests. Throughout history, Chrysanthemums have been a
                      symbol of love, life, and rebirth.
                      They are often gifted at baby showers and birthdays and are placed as offerings to
                      the Goddess Lakshmi during Diwali
                      Puja in Hindu culture. Mums are one of the most used edible flowers today, elevating
                      the color, texture, dimension, and
                      flavor of many different culinary creations.</p>
                  </div>
                </div>
              </div>
            </a>
          </div>
        </div>
      </section>
    
      <script  src="./script.js"></script>
    
    </body>
    </html>
    

    CSS :

    This code defines a webpage layout with responsive design. It resets margins and paddings globally and applies a “border-box” model to ensure padding and borders are included in element sizes. The body has a full-screen height with hidden horizontal overflow, a black background, and light gray text. Sections fill the height of the viewport, and a centered container holds content with flexible alignment. The .card-wraper uses a grid to display content cards, adjusting the number of columns based on screen size. The cards have hover effects and contain images and text that are styled for a neat, consistent look across various devices using media queries.

    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
    body {
      height: 100svh;
      overflow-x: hidden;
      background-color: #000;
      color: #e7e7e7;
    
      font-family: "Lato", sans-serif;
      font-weight: 400;
    }
    section {
      height: 100%;
    }
    .container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 40px 0;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%;
      min-height: 710px;
    }
    h3 {
      font-size: 30px;
      margin-bottom: 20px;
      font-weight: 600;
      color: #d3d1d1;
    }
    p {
      font-size: 18px;
      font-weight: 400;
      color: #d3d1d1;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
    }
    a.zoomed p {
      -webkit-line-clamp: unset;
    }
    a.zoomed .card-inner {
      overflow: auto;
    }
    a.opacity-0 {
      opacity: 0;
    }
    .overflow {
      overflow: hidden;
    }
    .overflow .background {
      opacity: 0 !important;
    }
    
    .background {
      background-color: #2c5c7f;
      border-radius: 20px;
      position: absolute;
      transition: all 0.4s ease-in-out;
      opacity: 0;
    }
    .card-wraper {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      justify-content: space-between;
    }
    a.card {
      text-decoration: none;
      height: 100%;
      width: 100%;
      display: inline-block;
      position: relative;
      padding: 10px;
    }
    .card-main {
      border: 1px solid #1a5582;
      padding: 40px;
      width: 100%;
      height: 100%;
      min-height: 300px;
      border-radius: 20px;
      overflow: hidden;
      background-color: #000;
    }
    .card:hover .card-main {
      position: relative;
      z-index: 20;
    }
    .card-inner {
      position: relative;
      z-index: 50;
      height: 100%;
    }
    .card-inner div {
      height: 100%;
    }
    img {
      height: 100%;
      width: 100%;
    }
    
    @media screen and (max-width: 1199px) {
      .container {
        max-width: 960px;
      }
    }
    
    @media screen and (max-width: 991px) {
      body {
        height: 100%;
      }
      .container {
        max-width: 720px;
        display: block;
      }
      .card-wraper {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }
    
    @media screen and (max-width: 767px) {
      .container {
        max-width: 520px;
      }
      .card-wraper {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .card-main {
        padding: 30px 20px;
      }
      a.card {
        padding: 6px;
      }
    }
    
    @media screen and (max-width: 575px) {
      .container {
        max-width: 100%;
      }
      .card-wraper {
        grid-template-columns: repeat(1, minmax(0, 1fr));
      }
      .card-main {
        padding: 40px;
      }
      a.card {
        padding: 10px;
      }
    }

    JavaScript:

    This code sets up an interactive effect for cards on a webpage. When the page loads, it remembers the last hovered card using localStorage and sets a background for it. As you hover over each card, the background adjusts its size and position to match the card, and the opacity changes to give a fading effect. When you click a card, it zooms in, filling most of the screen, and other cards fade out. Clicking the zoomed card again returns it to its normal size. The effect is controlled by adjusting CSS properties like transform, opacity, and position.

    document.addEventListener("DOMContentLoaded", function () {
      var cards = document.querySelectorAll("a.card");
      var background = document.querySelector(".background");
    
      // Store the index of the last hovered card
      var lastHoveredCardIndex = localStorage.getItem("lastHoveredCardIndex") || 0;
    
      // Set the background to the last hovered card by default
      var cardRect = cards[lastHoveredCardIndex].getBoundingClientRect();
      var x = cardRect.left + window.scrollX + cardRect.width / 2;
      var y = cardRect.top + window.scrollY + cardRect.height / 2;
    
      background.style.width = cardRect.width + "px";
      background.style.height = cardRect.height + "px";
      background.style.transform = `translate(${x - cardRect.width / 2}px, ${
        y - cardRect.height / 2
      }px)`;
      background.style.opacity = "0"; // Set opacity to 0 when the page loads
    
      cards.forEach(function (card, index) {
        card.addEventListener("mouseenter", function (e) {
          // If the card is zoomed in, return early to prevent the hover effect
          if (card.classList.contains("zoomed")) {
            return;
          }
    
          var rect = card.getBoundingClientRect();
          x = rect.left + window.scrollX + rect.width / 2;
          y = rect.top + window.scrollY + rect.height / 2;
    
          background.style.width = rect.width + "px";
          background.style.height = rect.height + "px";
          background.style.transform = `translate(${x - rect.width / 2}px, ${
            y - rect.height / 2
          }px)`;
          background.style.opacity = "1"; // Change opacity to 1 when a card is hovered over
          background.style.top = "0%";
          background.style.left = "0%";
          background.style.transformOrigin = "center";
          // Store the index of the hovered card
          localStorage.setItem("lastHoveredCardIndex", index);
        });
    
        card.addEventListener("mouseleave", function (e) {
          background.style.opacity = "0"; // Change opacity back to 0 when the mouse leaves a card
          // Reset the background size when the mouse leaves the card
          background.style.width = "0px";
          background.style.height = "0px";
        });
    
        card.addEventListener("click", function () {
          if (card.classList.contains("zoomed")) {
            card.classList.remove("zoomed");
            card.style.transform = "none";
            card.style.position = "relative";
            card.style.width = "unset";
            card.style.height = "unset";
            card.style.top = "0";
            card.style.left = "0";
            card.style.zIndex = "0";
    
            // Remove the 'overflow' class from the body when a card is unzoomed
            document.body.classList.remove("overflow");
    
            // Remove the 'opacity-0' class from other <a> tags when a card is unzoomed
            cards.forEach(function (otherCard) {
              if (otherCard !== card) {
                otherCard.classList.remove("opacity-0");
              }
            });
          } else {
            card.classList.add("zoomed");
            card.style.position = "fixed";
            card.style.top = "50%";
            card.style.left = "50%";
            requestAnimationFrame(function () {
              card.style.transform = "translate(-50%, -50%)";
            });
            card.style.width = "90vw";
            card.style.height = "90vh";
            card.style.zIndex = "1000";
    
            // Add the 'overflow' class to the body when a card is zoomed
            document.body.classList.add("overflow");
    
            // Add the 'opacity-0' class to other <a> tags when a card is zoomed
            cards.forEach(function (otherCard) {
              if (otherCard !== card) {
                otherCard.classList.add("opacity-0");
              }
            });
          }
        });
      });
    });

    In conclusion, creating a Card Mouse Hover Effect using HTML, CSS, and JavaScript has been an exciting and rewarding project. By combining these technologies, we’ve developed interactive and visually appealing cards that enhance user engagement through smooth hover animations.

    If your project has problems, don’t worry. Just click to download the source code and face your coding challenges with excitement. Have fun coding!

    hover Hover Effect
    Share. Copy Link Twitter Facebook LinkedIn Email WhatsApp
    Previous ArticleHow to make Step Indicator – Timeline using HTML CSS & JavaScript
    Next Article How to make Hover to Reveal Password using HTML CSS & JavaScript
    Coding Stella
    • Website

    Related Posts

    HTML & CSS

    How to make Happy birthday cake Animation using HTML & CSS

    29 May 2025
    JavaScript

    How to create Toast Catcher Game using HTML CSS and JS

    26 May 2025
    JavaScript

    How to create Animated No Chill Login form using HTML CSS and JS

    22 May 2025
    Add A Comment
    Leave A Reply Cancel Reply

    Trending Post

    Master Frontend in 100 Days Ebook

    2 March 202419K Views

    How to make Modern Login Form using HTML & CSS | Glassmorphism

    11 January 202416K Views

    How to make I love you Animation in HTML CSS & JavaScript

    14 February 202414K Views

    How to make Valentine’s Day Card using HTML & CSS

    13 February 202412K Views
    Follow Us
    • Instagram
    • Facebook
    • YouTube
    • Twitter
    ads
    Featured Post

    How to make Animated Toogle Pill using HTML & CSS

    13 June 2024

    How to create Smooth Image Slider using HTML CSS & JavaScript

    30 January 2025

    How to make Solar System using HTML & CSS

    28 July 2024

    Mastering Web Development: Your Ultimate Roadmap to Success

    31 January 2024
    Latest Post

    How to Create Animated Bicycle Product Card using HTML & CSS

    1 June 2025

    How to make Happy birthday cake Animation using HTML & CSS

    29 May 2025

    How to create Toast Catcher Game using HTML CSS and JS

    26 May 2025

    How to create Animated No Chill Login form using HTML CSS and JS

    22 May 2025
    Facebook X (Twitter) Instagram YouTube
    • About Us
    • Privacy Policy
    • Return and Refund Policy
    • Terms and Conditions
    • Contact Us
    • Buy me a coffee
    © 2025 Coding Stella. Made with 💙 by @coding.stella

    Type above and press Enter to search. Press Esc to cancel.

    Ad Blocker Enabled!
    Ad Blocker Enabled!
    Looks like you're using an ad blocker. We rely on advertising to help fund our site.
    Okay! I understood