Free Web Design Code & Scripts

Generate Random Background Color JavaScript

Generate Random Background Color Javascript
Code Snippet:JavaScript - Random RGB Color
Author: Pyxofy
Published: 5 months ago
Last Updated: 5 months ago
Downloads: 166
License: MIT
Edit Code online: View on CodePen
Read More

This tutorial guides you through creating a simple web page that dynamically changes its background color with each click of a button. This is a great way to learn about event listeners, DOM manipulation, and how to generate random background color javascript. It’s a fun and interactive project that can enhance user experience.

Setting Up the HTML Structure

First, we need to create the basic HTML structure for our web page. This will include a container to hold the elements, a heading, a display area for the color code, and a button to trigger the color change.

<div class="container">
  <h1>Ramdom Color</h1>
  <h2></h2>
  <button>Click to Change Background Color</button>
</div>
    <script  src="./script.js"></script>

Styling with CSS

Next, let’s style the elements using CSS to make our page visually appealing. We’ll center the content, add some basic styling to the container, heading, color code display, and the button.

/* Center shapes */
body {
  margin: 0;
  padding: 0;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-family: Arial, Helvetica, sans-serif;
  transition: background-color 0.5s;
}

/* Set container and optional light gray border */
.container {
  width: 500px;
  height: 500px;
  border: 5px solid lightgray;
  background: transparent;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  border-radius: 1px;
}

h1,
h2 {
  text-shadow: 0 0 2px white, 0 0 25px white;
}

h2 {
  height: 20px;
  margin: 50px;
  font-size: 30px;
}

button {
  width: 450px;
  padding: 20px;
  background: #0d7df5;
  color: white;
  font-size: 20px;
  font-weight: bold;
  border-radius: 50px;
  border: 3px solid lightgray;
}

Implementing the JavaScript Functionality

Now for the core logic! We’ll use JavaScript to generate random background color javascript and update both the container and body’s background color, along with displaying the RGB color code.

Step-by-step Explanation:

  1. Select Elements: Get references to the container, color code display (h2), and the button using document.querySelector.
  2. Create the generateRandomColor Function: This function will:
    • Generate Random RGB Values: Use Math.random() to generate random values between 0 and 255 for red, green, and blue components.
    • Update Background Colors: Set the backgroundColor property of the container and body to the randomly generated RGB values.
    • Display the Color Code: Update the textContent of the h2 element to show the current RGB color code.
  3. Add Event Listener: Attach an event listener to the button that calls the generateRandomColor function when the button is clicked.
const container = document.querySelector(".container");
const colorCode = document.querySelector("h2");
const button = document.querySelector("button");

function generateRandomColor() {
  const red = Math.floor(Math.random() * 256);
  const green = Math.floor(Math.random() * 256);
  const blue = Math.floor(Math.random() * 256);

  container.style.backgroundColor = `rgb(${red}, ${green}, ${blue})`;

  document.body.style.backgroundColor = `rgba(${red}, ${green}, ${blue}, 0.5)`;

  colorCode.textContent = `rgb(${red}, ${green}, ${blue})`;
}

button.addEventListener("click", generateRandomColor);

Conclusion

You’ve now successfully created a web page that generate random background color javascript with a simple click! This project showcases basic JavaScript concepts and can be expanded upon to create more complex and interactive web experiences.

Loading... ...

Loading preview...

Device: Desktop
Dimensions: 1200x800
Lines: 0 Characters: 0 Ln 1, Ch 1

Leave a Comment

About W3Frontend

W3Frontend provides free, open-source web design code and scripts to help developers and designers build faster. Every snippet is reviewed before publishing for quality. Learn more.