JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Transitions</title>
<link rel="stylesheet" href="styles.css" />
<script>
document.addEventListener("DOMContentLoaded", () => {
const element = document.querySelector(".square");
const addButton = document.querySelector(".add-square");
addButton.addEventListener("click", () => {
const newSquare = document.createElement("div");
newSquare.classList.add("square");
document.querySelector(".wrapper").appendChild(newSquare);
});
});
</script>
</head>
<body>
<div class="wrapper">
<div class="square"></div>
</div>
<button class="add-square">Add Square</button>
</body>
</html>
CSS
.square {
width: 100px;
height: 100px;
background-image: linear-gradient(purple, yellow);
transition: display 0.5s allow-discrete, opacity 0.5s, transform 0.5s;
}
@starting-style {
.square {
opacity: 0;
transform: scale(0);
}
}
.square.hide {
display: none;
opacity: 0;
}