Exercices HTML CSS

Exercice 7 HTML et CSS Corrigé S4

Exercice 7 : Effet Parallaxe avec une image de fond

Objectif : Créer un effet de parallaxe pour une image de fond lorsque l'utilisateur fait défiler la page.

Instructions :

  • Créez une section pleine largeur avec une image de fond.
  • Utilisez CSS pour créer l'effet de parallaxe, où l'image de fond se déplace plus lentement que le contenu au défilement de la page.
  • La section doit contenir du texte ou des éléments supplémentaires pour montrer l'effet au défilement.

Points à évaluer :

  • Utilisation du CSS pour l’effet parallaxe.
  • Créer un design visuellement attrayant et fluide lors du défilement.

Étape 1 : Structure HTML

On commence par créer la structure HTML avec trois cartes de prix contenant les informations demandées : un titre, un prix, une liste de caractéristiques, et un bouton d’achat.

<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Table de Prix Responsive</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>

    <section class="pricing-table">
        <div class="pricing-card">
            <h2>Plan Basique</h2>
            <p class="price">9.99€/mois</p>
            <ul>
                <li>1 utilisateur</li>
                <li>10 Go de stockage</li>
                <li>Support email</li>
            </ul>
            <button>Acheter</button>
        </div>
        <div class="pricing-card">
            <h2>Plan Standard</h2>
            <p class="price">19.99€/mois</p>
            <ul>
                <li>5 utilisateurs</li>
                <li>50 Go de stockage</li>
                <li>Support prioritaire</li>
            </ul>
            <button>Acheter</button>
        </div>
        <div class="pricing-card">
            <h2>Plan Premium</h2>
            <p class="price">29.99€/mois</p>
            <ul>
                <li>10 utilisateurs</li>
                <li>100 Go de stockage</li>
                <li>Support téléphonique</li>
            </ul>
            <button>Acheter</button>
        </div>
    </section>

</body>
</html>

Étape 2 : Stylisation avec CSS

Nous allons maintenant utiliser CSS Grid pour organiser les cartes de prix, et appliquer des media queries pour rendre la mise en page responsive.

/* Style général */
body {
    margin: 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #f4f4f4;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

/* Section de la table de prix */
.pricing-table {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 20px;
    max-width: 1200px;
    width: 100%;
}

.pricing-card {
    background-color: #fff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    text-align: center;
    position: relative;
    overflow: hidden;
}

.pricing-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(45deg, #007BFF, #00D4FF);
}

h2 {
    font-size: 24px;
    color: #007BFF;
    margin-bottom: 20px;
}

.price {
    font-size: 36px;
    color: #333;
    margin-bottom: 20px;
}

ul {
    list-style-type: none;
    padding: 0;
    margin-bottom: 20px;
}

ul li {
    font-size: 18px;
    margin-bottom: 10px;
}

button {
    background-color: #007BFF;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}

button:hover {
    background-color: #0056b3;
}

/* Mise en page responsive */
@media (max-width: 768px) {
    .pricing-table {
        grid-template-columns: 1fr;
    }

    .pricing-card {
        margin-bottom: 20px;
    }
}

 

Ajouter un commentaire

Veuillez vous connecter pour ajouter un commentaire.

Pas encore de commentaires.