Aller au contenu

Fiche de révision - Interactions homme-machine sur le Web


  • HTML (HyperText Markup Language) : langage de balisage pour structurer le contenu
  • Structure minimale : <!DOCTYPE html>, <html>, <head>, <body>
  • Balises essentielles :
BaliseRôle
<h1> à <h6>Titres (du plus important au moins important)
<p>Paragraphe
<a href="...">Lien hypertexte
<img src="..." alt="...">Image
<ul>, <ol>, <li>Listes (non ordonnée / ordonnée)
<table>, <tr>, <th>, <td>Tableau
<div>, <span>Conteneurs (bloc / en ligne)
<header>, <nav>, <main>, <footer>Balises sémantiques HTML5
  • Attributs courants : id (unique), class (multiple), href, src, alt, name

  • CSS (Cascading Style Sheets) : mise en forme du HTML
  • Trois méthodes : en ligne (style="..."), interne (<style>), externe (<link>, recommandé)

Syntaxe :

selecteur { propriete: valeur; }

Sélecteurs :

SélecteurCible
pToutes les balises <p>
.classeÉléments avec class="classe"
#idL'élément avec id="id"
div pLes <p> dans un <div>

Modèle de boîte : margin (extérieur) → border → padding (intérieur) → contenu


  • S'exécute côté client (dans le navigateur)
  • Variables : let (modifiable), const (constante)
  • Comparaison stricte : === (pas ==)
  • Affichage : console.log() (pas print())

Python → JavaScript :

PythonJavaScript
and, or, not&&, ||, !
IndentationAccolades { }
print()console.log()
True / Falsetrue / false

  • Représentation arborescente de la page HTML en mémoire
  • Accéder aux éléments :
document.getElementById("id") // par id
document.querySelector(".classe") // premier élément
document.querySelectorAll("p") // tous les éléments
  • Modifier :
element.textContent = "nouveau texte"; // texte brut
element.innerHTML = "<em>HTML</em>"; // contenu HTML
element.style.color = "red"; // style CSS
element.classList.add("visible"); // ajouter une classe
element.classList.toggle("actif"); // basculer une classe

  • Événement = action de l'utilisateur ou du navigateur
  • Méthode recommandée : addEventListener
element.addEventListener("click", function(e) {
// traitement
});

Événements principaux :

ÉvénementDéclencheur
clickClic gauche
mouseover / mouseoutEntrée / sortie souris
keydown / keyupTouche enfoncée / relâchée
inputModification d'un champ
submitSoumission d'un formulaire

Objet événement : e.target (élément ciblé), e.key (touche), e.preventDefault() (empêcher l'action par défaut)


  • Balise <form action="URL" method="get|post">
  • L'attribut name est indispensable pour transmettre les données
  • Types de champs : text, email, password, number, date, checkbox, radio, select
  • Boutons : submit (envoyer), reset (réinitialiser), button (JavaScript)

Structure d'une requête : ligne de requête + en-têtes + corps

Structure d'une réponse : code de statut + en-têtes + corps

CodeSignification
200OK
404Non trouvé
403Interdit
500Erreur serveur
GETPOST
ParamètresDans l'URL (?q=...&p=...)Dans le corps de la requête
VisibilitéVisibles dans la barre d'adresseNon visibles dans l'URL
Favori/partageOuiNon
TailleLimitée (~2 000 car.)Pas de limite
UsageLecture (recherche)Modification (connexion, inscription)

INTERACTION HOMME-MACHINE SUR LE WEB
─────────────────────────────────────
┌─────────────────────────────────────────────────┐
│ NAVIGATEUR │
│ │
│ HTML ──► Structure ┌──────────────┐ │
│ CSS ──► Apparence │ Événements │ │
│ JS ──► Comportement ◄──│ click, input │ │
│ │ keydown... │ │
│ DOM └──────────────┘ │
│ (arbre en mémoire) │
└──────────────┬──────────────────────────────────┘
│
Requêtes HTTP (GET / POST)
│
┌──────────────▼──────────────────────────────────┐
│ SERVEUR │
│ │
│ Reçoit les données du formulaire │
│ Traite la requête (Python, PHP...) │
│ Renvoie une réponse HTTP (code + HTML) │
└─────────────────────────────────────────────────┘