recherche
Maisoninterface Webtutoriel CSSApplication de quiz interactif

Interactive Quiz App

Ce projet est une application de quiz interactif simple construite avec HTML, CSS et JavaScript. Il permet aux utilisateurs de répondre à des questions à choix multiples, de soumettre leurs réponses et de recevoir un score instantané. L'application démontre la gestion de base des formulaires, les mises à jour de contenu dynamique et la manipulation du DOM en JavaScript.


? Aperçu du projet

Caractéristiques

  • Questions à choix multiples : Trois questions avec plusieurs options de réponse.
  • Bouton Soumettre : permet aux utilisateurs de soumettre leurs réponses.
  • Score instantané : affiche le score de l'utilisateur immédiatement après la soumission.
  • Conception interactive : style simple et effets de survol pour une meilleure expérience utilisateur.

Technologies utilisées

  • HTML : Pour structurer le contenu.
  • CSS : Pour styliser l'interface du quiz.
  • JavaScript : Pour ajouter de l'interactivité et traiter les réponses.

? Structure des fichiers

quiz-app/
│-- index.html      ← The HTML structure
│-- styles.css      ← The CSS styling
└-- script.js       ← The JavaScript logic

? Répartition des codes

? HTML (index.html)

Le fichier HTML crée la structure du quiz, comprenant des questions, des choix de réponses et un bouton d'envoi.

Éléments clés :

  • Formulaire (
    ) pour regrouper les questions du quiz.
  • Boutons radio () pour sélectionner les réponses.
  • Bouton Soumettre pour vérifier les réponses.
  • Result Div pour afficher le score.

? CSS (styles.css)

The CSS file styles the quiz interface, making it visually appealing and responsive.

Key Styling Concepts:

  • Layout: Flexbox for alignment and spacing.
  • Hover Effects: Button changes color when hovered.
  • Box Shadow: For a modern card-like appearance.
button {
  background-color: #28a745;
  color: #fff;
  padding: 10px 15px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

button:hover {
  background-color: #218838;
}

⚙️ JavaScript (script.js)

Le fichier JavaScript gère la logique du quiz, traite les réponses des utilisateurs et affiche le score.

Concepts clés :

  • Écouteurs d'événements : pour détecter le moment où l'utilisateur clique sur le bouton de soumission.
  • Gestion des formulaires : accès aux réponses sélectionnées par l'utilisateur.
  • Manipulation DOM : Mise à jour de la section des résultats avec le score de l'utilisateur.
document.getElementById('submit-btn').addEventListener('click', function() {
  const answers = {
    q1: 'Paris',
    q2: '4',
    q3: 'Blue'
  };

  let score = 0;
  const form = document.getElementById('quiz-form');

  if (form.q1.value === answers.q1) score++;
  if (form.q2.value === answers.q2) score++;
  if (form.q3.value === answers.q3) score++;

  document.getElementById('result').textContent = `You scored ${score} out of 3!`;
});

? Concepts clés pour l'apprentissage

  1. Formulaires et entrées HTML :

    • Comment structurer les formulaires et utiliser les boutons radio pour les questions à choix multiples.
    • Comprendre l'attribut name pour regrouper les entrées radio.
  2. Style CSS :

    • Utilisation de Flexbox pour la mise en page et l'alignement.
    • Ajout d'un attrait visuel avec des effets de survol et des ombres.
  3. Interactivité JavaScript :

    • Ajout d'écouteurs d'événements avec addEventListener().
    • Lire les données du formulaire et comparer les entrées de l'utilisateur aux réponses correctes.
    • Mise à jour dynamique du DOM à l'aide de textContent.

?️ Comment exécuter le projet

  1. Cloner ou télécharger le projet :
quiz-app/
│-- index.html      ← The HTML structure
│-- styles.css      ← The CSS styling
└-- script.js       ← The JavaScript logic
  1. Ouvrez index.html dans votre navigateur :

? CSS (styles.css)

The CSS file styles the quiz interface, making it visually appealing and responsive.

Key Styling Concepts:

  • Layout: Flexbox for alignment and spacing.
  • Hover Effects: Button changes color when hovered.
  • Box Shadow: For a modern card-like appearance.
button {
  background-color: #28a745;
  color: #fff;
  padding: 10px 15px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

button:hover {
  background-color: #218838;
}
  1. Essayez le Quiz :
    • Répondez aux questions.
    • Cliquez sur "Envoyer les réponses" pour voir votre score.

? Améliorations à essayer

  • Ajouter plus de questions : augmentez le nombre de questions pour défier les utilisateurs.
  • Commentaires personnalisés : affichez des commentaires détaillés pour chaque question.
  • Minuterie : ajoutez un compte à rebours pour chaque question.
  • Améliorations du style : améliorez le design avec des animations ou des thèmes.

? Voir le projet sur GitHub ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Ajout d'ombres de boîte aux blocs et éléments WordPressAjout d'ombres de boîte aux blocs et éléments WordPressMar 09, 2025 pm 12:53 PM

Le CSS Box-Shadow et les propriétés de contour ont gagné le thème. Laissez regarder quelques exemples de la façon dont cela fonctionne dans des thèmes réels et des options que nous devons appliquer ces styles aux blocs et éléments WordPress.

Travailler avec GraphQL CachingTravailler avec GraphQL CachingMar 19, 2025 am 09:36 AM

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

Faire votre première transition Svelte personnaliséeFaire votre première transition Svelte personnaliséeMar 15, 2025 am 11:08 AM

L'API de transition Svelte fournit un moyen d'animer les composants lorsqu'ils entrent ou quittent le document, y compris les transitions Svelte personnalisées.

Barbars CSS personnalisés chics et cool: une vitrineBarbars CSS personnalisés chics et cool: une vitrineMar 10, 2025 am 11:37 AM

Dans cet article, nous plongerons dans le monde des barres de défilement. Je sais, ça ne semble pas trop glamour, mais croyez-moi, une page bien conçue va de pair

Show, ne dit pasShow, ne dit pasMar 16, 2025 am 11:49 AM

Combien de temps passez-vous à concevoir la présentation de contenu pour vos sites Web? Lorsque vous écrivez un nouveau blog ou créez une nouvelle page, pensez-vous à

Construire une application Ethereum à l'aide de Redwood.js et de la fauneConstruire une application Ethereum à l'aide de Redwood.js et de la fauneMar 28, 2025 am 09:18 AM

Avec la récente montée du prix du bitcoin sur 20k $ USD, et pour lui, récemment en train de briser 30k, je pensais que cela valait la peine de reprendre une profonde plongeon dans la création d'Ethereum

Que diable sont les commandes NPM?Que diable sont les commandes NPM?Mar 15, 2025 am 11:36 AM

Les commandes NPM exécutent diverses tâches pour vous, soit en tant que processus unique ou en cours d'exécution pour des choses comme le démarrage d'un serveur ou la compilation de code.

Utilisons (x, x, x, x) pour parler de spécificitéUtilisons (x, x, x, x) pour parler de spécificitéMar 24, 2025 am 10:37 AM

Je discutais avec Eric Meyer l'autre jour et je me suis souvenu d'une histoire d'Eric Meyer de mes années de formation. J'ai écrit un article de blog sur la spécificité CSS, et

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

SublimeText3 version anglaise

SublimeText3 version anglaise

Recommandé : version Win, prend en charge les invites de code !

MantisBT

MantisBT

Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)