Créez une carte de visite qui s'adapte selon la taille de l'écran :
Indice : Utilisez @media avec
max-width et min-width.
<style>
/* Styles par défaut pour desktop */
.business-card {
width: 400px;
margin: 0 auto;
background-color: white;
border: 2px solid black;
padding: 20px;
}
/* Votre code CSS pour les media queries ici */
</style>
<div class="business-card">
<h2>Jean Dupont</h2>
<p>Développeur Web</p>
<p>Email: jean.dupont@example.com</p>
<p>Téléphone: 0123456789</p>
</div>
Développeur Web
Email: jean.dupont@example.com
Téléphone: 0123456789
Corrigé :
<style>
.business-card {
width: 400px;
margin: 0 auto;
background-color: white;
border: 2px solid black;
padding: 20px;
}
@media (max-width: 600px) {
.business-card {
width: 90%;
font-size: 18px;
background-color: lightblue;
}
}
@media (min-width: 601px) and (max-width: 900px) {
.business-card {
width: 70%;
border-color: green;
}
}
</style>
Explication : Les media queries permettent d'appliquer des styles spécifiques selon la largeur de l'écran.
Créez une galerie d'images qui s'adapte selon la taille de l'écran :
Indice : Utilisez flex-basis ou
grid-template-columns dans vos media queries.
<style>
.gallery {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.gallery img {
width: 100%;
height: auto;
}
/* Votre code CSS pour les media queries ici */
</style>
<div class="gallery">
<img src="https://picsum.photos/id/10/200/300" alt="Image 1">
<img src="https://picsum.photos/id/20/200/300" alt="Image 2">
<img src="https://picsum.photos/id/30/200/300" alt="Image 3">
<img src="https://picsum.photos/id/40/200/300" alt="Image 4">
<img src="https://picsum.photos/id/50/200/300" alt="Image 5">
<img src="https://picsum.photos/id/60/200/300" alt="Image 6">
</div>
Corrigé :
<style>
.gallery {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.gallery img {
width: 100%;
height: auto;
}
@media (min-width: 1024px) {
.gallery img {
flex: 0 0 calc(33.33% - 10px);
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.gallery img {
flex: 0 0 calc(50% - 10px);
}
}
@media (max-width: 767px) and (orientation: portrait) {
.gallery img {
flex: 0 0 100%;
}
}
</style>
Explication : Les media queries permettent de modifier la disposition des éléments en fonction de la taille de l'écran et de son orientation.
Créez un menu qui passe en mode "hamburger" sur mobile :
Indice : Utilisez display: none et
display: block dans vos media queries.
<style>
/* Styles par défaut pour desktop */
.menu {
display: flex;
list-style: none;
padding: 0;
}
.menu li {
margin: 0 10px;
}
.hamburger {
display: none;
}
/* Votre code CSS pour les media queries ici */
</style>
<div class="hamburger">☰</div>
<ul class="menu">
<li><a href="#">Accueil</a></li>
<li><a href="#">À propos</a></li>
<li><a href="#">Services</a></li>
<li><a href="#">Contact</a></li>
</ul>
Corrigé :
<style>
.menu {
display: flex;
list-style: none;
padding: 0;
}
.menu li {
margin: 0 10px;
}
.hamburger {
display: none;
}
@media (max-width: 767px) {
.menu {
display: none;
flex-direction: column;
}
.menu.active {
display: flex;
}
.hamburger {
display: block;
cursor: pointer;
}
}
</style>
Explication : Les media queries permettent de masquer ou afficher des éléments selon la taille de l'écran.