Le design web évolue constamment, avec une attention particulière aux détails interactifs qui captivent les utilisateurs. Un effet LED peut donner à votre site web un aspect moderne et innovant, en jouant sur la lumière et l’interaction utilisateur. Ce tutoriel vous guidera à travers la création d’un effet d’éclairage LED en utilisant HTML, CSS, et JavaScript. Cet effet crée une lumière LED qui suit le mouvement de la souris et révèle du texte caché lorsqu’elle le survole. Nous explorerons en détail chaque étape du processus, en expliquant comment le code fonctionne pour vous permettre de l’intégrer dans vos propres projets.
L’effet LED n’est pas seulement esthétique ; il ajoute également une couche d’interactivité qui peut améliorer l’engagement des utilisateurs. Lorsqu’un utilisateur interagit avec des éléments qui répondent visuellement, cela crée un sentiment de satisfaction et peut inciter à explorer davantage le site. De plus, cet effet est parfait pour les sites de design, portfolios ou toute plateforme qui souhaite se démarquer visuellement.
Pour commencer, nous devons structurer notre projet avec du HTML. Voici le code de base que nous utiliserons pour créer l’effet LED.
LED Light
Digital marketing agency
Mondesign Web
container
et un titre h1
avec l’ID title.Le <div id=" »light »"> : est l’élément qui représentera la lumière LED.
La prochaine étape consiste à styliser les éléments HTML afin de créer l’effet visuel désiré. Le fichier CSS suivant assure la mise en forme de la page, ainsi que l’apparence de l’effet LED.
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Playfair Display', serif;
}
body {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
overflow: hidden;
background: rgb(14, 14, 14);
background: linear-gradient(270deg, rgba(14, 14, 14, 1) 0%, rgba(0, 96, 181, 1) 50%, rgba(14, 14, 14, 1) 100%);
}
#title {
position: relative;
color: #FFFBFB;
font-weight: 700;
font-size: 10em;
cursor: default;
opacity: 0;
transition: opacity 0.1s ease;
}
#light {
position: absolute;
transform: translate(-50%, -50%);
width: 20px;
height: 300px;
background: #FFFBFB;
border-radius: 5px;
box-shadow: 0 0 15px #FFFBFB, 0 0 100px #FFFBFB, 0 0 200px #FFFBFB, 0 0 300px #0060B5;
}
.title{
position: relative;
color: white;
font-weight: 500;
font-size: 52px;
}
.container{
display: flex;
flex-direction: column;
align-items: center;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Playfair Display', serif;
}
Playfair Display
à tous les éléments. body {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
overflow: hidden;
background: rgb(14, 14, 14);
background: linear-gradient(270deg, rgba(14, 14, 14, 1) 0%, rgba(0, 96, 181, 1) 50%, rgba(14, 14, 14, 1) 100%);
}
#title {
position: relative;
color: #FFFBFB;
font-weight: 700;
font-size: 10em;
cursor: default;
opacity: 0;
transition: opacity 0.1s ease;
}
#light {
position: absolute;
transform: translate(-50%, -50%);
width: 20px;
height: 300px;
background: #FFFBFB;
border-radius: 5px;
box-shadow: 0 0 15px #FFFBFB, 0 0 100px #FFFBFB, 0 0 200px #FFFBFB, 0 0 300px #0060B5;
}
light
est un rectangle vertical mince.Si vous souhaitez également explorer d'autres effets intéressants pour votre site web, découvrez notre article sur l'effet de texte flottant en utilisant HTML, CSS et JavaScript. Ce tutoriel vous guide à travers un design web dynamique qui pourrait compléter vos compétences en effets visuels.
Le JavaScript est essentiel pour rendre l’effet LED interactif. Voici le script qui permet de faire suivre la lumière par la souris et de révéler le texte lorsqu’elle passe au-dessus.
var text = document.getElementById('title');
var light = document.getElementById('light');
document.addEventListener('mousemove', function(event) {
var mouseX = event.clientX;
var mouseY = event.clientY;
light.style.left = mouseX + 'px';
light.style.top = mouseY + 'px';
var textRect = text.getBoundingClientRect();
var isWithinX = mouseX > textRect.left && mouseX < textRect.right;
var isWithinY = mouseY > textRect.top && mouseY < textRect.bottom;
if (isWithinX && isWithinY) {
text.style.opacity = 1;
} else {
text.style.opacity = 0;
}
});
Analysons le code JavaScript suivant :
var text = document.getElementById('title');
var light = document.getElementById('light');
title
, qui correspond au texte du titre dans votre page.light
, qui correspond à l’élément lumineux que vous déplacez sur la page. document.addEventListener('mousemove', function(event) {
var mouseX = event.clientX;
var mouseY = event.clientY;
light.style.left = mouseX + 'px';
light.style.top = mouseY + 'px';
light.style.left et light.style.top : Positionnent l’élément lumineux (#light
) exactement là où se trouve la souris, en utilisant les coordonnées X et Y.
var textRect = text.getBoundingClientRect();
var textCenterX = textRect.left + textRect.width / 2;
var textCenterY = textRect.top + textRect.height / 2;
#title
), c’est-à-dire la position du texte par rapport à la fenêtre.left
) et en ajoutant la moitié de sa largeur/hauteur. var isWithinX = mouseX > textRect.left && mouseX < textRect.right;
var isWithinY = mouseY > textRect.top && mouseY < textRect.bottom;
if (isWithinX && isWithinY) {
text.style.opacity = 1;
} else {
text.style.opacity = 0;
}
});
Ce script permet de créer un effet interactif où le texte (#title
) devient visible uniquement lorsque l’effet lumineux (#light
) passe au-dessus de lui. Lorsque l’utilisateur déplace la souris, la lumière suit le mouvement, et le texte apparaît et disparaît en fonction de la position de cette lumière, créant ainsi un effet de révélation dynamique.
Dans ce tutoriel, nous avons exploré comment créer un effet d’éclairage LED interactif en utilisant HTML, CSS et JavaScript. Ce type d’effet est idéal pour dynamiser une interface web en ajoutant une touche moderne et interactive. Que ce soit pour un portfolio, un site de marketing, ou tout autre projet, cet effet peut être facilement personnalisé pour répondre à vos besoins spécifiques.
L’effet d’éclairage LED n’est pas seulement visuellement attractif, mais il peut également améliorer l’expérience utilisateur en rendant les interactions avec votre site plus engageantes. En comprenant les bases de sa mise en œuvre, vous pouvez maintenant expérimenter et adapter cet effet à vos propres projets pour créer des expériences web encore plus captivantes.
MonDesign Web, your digital marketing agency, dedicated to guiding you to the pinnacle of your online success.
We use cookies to improve your experience on our site. By using our site, you consent to cookies.
Websites store cookies to enhance functionality and personalise your experience. You can manage your preferences, but blocking some cookies may impact site performance and services.
Essential cookies enable basic functions and are necessary for the proper function of the website.
These cookies are needed for adding comments on this website.
Statistics cookies collect information anonymously. This information helps us understand how visitors use our website.
Google Analytics is a powerful tool that tracks and analyzes website traffic for informed marketing decisions.
Service URL: policies.google.com
Marketing cookies are used to follow visitors to websites. The intention is to show ads that are relevant and engaging to the individual user.
Facebook Pixel is a web analytics service that tracks and reports website traffic.
Service URL: www.facebook.com