Overview:
În această lecție, vom explora diferite efecte CSS care pot fi aplicate la elemente pentru a îmbunătăți aspectul și interactivitatea paginilor web.
Key Concepts:
- Efecte de Tranziție:
- Utilizarea proprietății
transition
pentru a adăuga tranziții de animație la schimbările de stare ale elementelor.
- Utilizarea proprietății
- Efecte Hover:
- Aplicarea stilurilor specifice la elemente atunci când utilizatorul plasează cursorul deasupra lor (
:hover
).
- Aplicarea stilurilor specifice la elemente atunci când utilizatorul plasează cursorul deasupra lor (
- Umbră și Contur:
- Adăugarea umbrei și a unui contur pentru a evidenția elementele și pentru a le oferi o adâncime vizuală.
- Efecte de Transformare:
- Utilizarea proprietăților
transform
șirotate
pentru a realiza transformări 2D sau 3D ale elementelor.
- Utilizarea proprietăților
Detailed Examples:
1. Efecte de Tranziție:
/* Adăugare tranziții pentru schimbările de culoare */
.transition-effect {
transition: background-color 0.3s ease-in-out;
}
/* Tranziție pentru schimbarea dimensiunilor */
.resize-effect {
transition: width 0.5s ease-out, height 0.5s ease-out;
}
2. Efecte Hover:
/* Stiluri implicite ale elementelor */
.hover-effect {
opacity: 1;
transition: opacity 0.3s ease-in-out;
}
/* Stiluri pentru efectul la hover */
.hover-effect:hover {
opacity: 0.7;
}
3. Umbră și Contur:
/* Adăugare umbră pentru efect de adâncime */
.shadow-effect {
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
/* Adăugare contur */
.outline-effect {
outline: 2px solid #3498db;
}
4. Efecte de Transformare:
/* Rotirea elementului la hover */
.rotate-effect:hover {
transform: rotate(45deg);
}
Exercițiul Practic: CSS – Efecte
Pagina HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exercițiul Practic: Efecte CSS</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="transition-effect">
<p>Schimbare de culoare cu tranziție.</p>
</div>
<div class="resize-effect">
<p>Mărimea se schimbă cu tranziție.</p>
</div>
<div class="hover-effect">
<p>Efect la hover pentru opacitate.</p>
</div>
<div class="shadow-effect">
<p>Element cu umbră pentru adâncime.</p>
</div>
<div class="outline-effect">
<p>Element cu contur.</p>
</div>
<div class="rotate-effect">
<p>Rotire la hover.</p>
</div>
</body>
</html>
Fișierul CSS (style.css):
/* Adăugare tranziții pentru schimbările de culoare */
.transition-effect {
background-color: #3498db;
padding: 10px;
color: white;
transition: background-color 0.3s ease-in-out;
}
/* Tranziție pentru schimbarea dimensiunilor */
.resize-effect {
width: 200px;
height: 100px;
background-color: #e74c3c;
color: white;
padding: 10px;
transition: width 0.5s ease-out, height 0.5s ease-out;
}
/* Stiluri implicite ale elementelor */
.hover-effect {
opacity: 1;
transition: opacity 0.3s ease-in-out;
}
/* Stiluri pentru efectul la hover */
.hover-effect:hover {
opacity: 0.7;
}
/* Adăugare umbră pentru efect de adâncime */
.shadow-effect {
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
padding: 10px;
margin: 10px;
}
/* Adăugare contur */
.outline-effect {
outline: 2px solid #3498db;
padding: 10px;
margin: 10px;
}
/* Rotirea elementului la hover */
.rotate-effect {
transform: rotate(0deg);
transition: transform 0.3s ease-in-out;
}
/* Rotire la hover */
.rotate-effect:hover {
transform: rotate(45deg);
}