-- title: Le Web - Exercices --
Le Web - Exercices¶
Exercice 1 - Définitions¶
Répondre en une phrase à chaque question.
a. Qu'est-ce que le HTML ? À quoi sert-il ?
Correction
HTML (HyperText Markup Language) est le langage de balisage utilisé pour définir la structure et le contenu d'une page Web. Il utilise des balises pour organiser les éléments (titres, paragraphes, images, liens...).
b. Qu'est-ce que le CSS ? À quoi sert-il ?
Correction
CSS (Cascading Style Sheets) est le langage qui définit la présentation visuelle d'une page Web : couleurs, polices, tailles, dispositions, marges. Il est séparé du HTML pour distinguer le contenu de sa mise en forme.
c. Qu'est-ce qu'une URL ? À quoi sert-elle ?
Correction
Une URL (Uniform Resource Locator) est l'adresse unique d'une ressource sur le Web. Elle permet au navigateur de localiser et d'accéder à une page, une image ou tout autre fichier hébergé sur un serveur.
d. Qu'est-ce qu'un lien hypertexte ?
Correction
Un lien hypertexte est un élément cliquable (texte ou image) dans une page Web qui permet de naviguer vers une autre page ou une autre partie de la même page. Il est codé avec la balise <a> en HTML.
e. Qu'est-ce qu'un moteur de recherche ? Décrire ses trois étapes de fonctionnement.
Correction
Un moteur de recherche est une application Web qui permet de trouver des ressources à partir de mots clés. Il fonctionne en trois étapes : (1) exploration - des robots parcourent le Web en suivant les liens ; (2) indexation - les pages découvertes sont analysées et stockées dans une base de données ; (3) classement et diffusion - les résultats sont triés par pertinence et affichés à l'utilisateur.
f. Qu'est-ce qu'un cookie ? À quoi sert-il ?
Correction
Un cookie est un petit fichier texte déposé sur l'ordinateur de l'utilisateur par un site Web. Il sert à mémoriser des informations : préférences de l'utilisateur, contenu d'un panier d'achat, identifiant de connexion, ou encore à suivre la navigation pour la publicité ciblée (cookies tiers).
g. Citer trois réglages du navigateur permettant de protéger ses informations personnelles.
Correction
(1) La gestion des cookies : on peut choisir d'accepter, refuser ou supprimer les cookies, en particulier les cookies tiers. (2) La suppression de l'historique de navigation. (3) La navigation privée qui ne conserve ni historique, ni cookies à la fin de la session.
Exercice 2 - Structure d'une page HTML¶
Voici le squelette d'une page HTML :
1. Quel est le rôle de la partie <head> ? Donner deux balises que l'on peut y placer.
2. Quel est le rôle de la partie <body> ? Donner trois balises que l'on peut y placer.
3. Que signifie <!DOCTYPE html> ?
Correction
1. La partie <head> contient les informations sur la page qui ne sont pas directement visibles : le titre de l'onglet (<title>), l'encodage des caractères (<meta charset="utf-8">), le lien vers la feuille de style (<link rel="stylesheet" href="style.css">).
2. La partie <body> contient le contenu visible de la page. On peut y placer : <h1> (titre), <p> (paragraphe), <img> (image), <a> (lien), <ul> (liste à puces), <table> (tableau)...
3. <!DOCTYPE html> indique au navigateur que le document utilise le langage HTML5. C'est une instruction obligatoire placée en tout début de fichier.
Exercice 3 - Écrire une page HTML¶
Écrire le code HTML d'une page qui affiche :
- un titre principal « Mon animal préféré »
- un paragraphe de description
- une image (avec un attribut
alt) - un lien vers la page Wikipedia de l'animal choisi
Correction
<!DOCTYPE html>
<html lang="fr">
<head>
<title>Mon animal préféré</title>
<meta charset="utf-8" />
</head>
<body>
<h1>Mon animal préféré</h1>
<p>Le chat est un petit félin domestique apprécié
pour sa grâce et son indépendance.</p>
<img src="chat.jpg" alt="Photo d'un chat roux" />
<a href="https://fr.wikipedia.org/wiki/Chat">
En savoir plus sur Wikipedia
</a>
</body>
</html>
Exercice 4 - Décomposer une URL¶
Décomposer chacune des URL suivantes en identifiant : le protocole, le nom de domaine, le chemin et la ressource.
a. https://www.lycée-exemple.fr/cours/maths/chapitre1.html
b. http://info.univ-paris.fr/etudiants/inscription.php
c. https://docs.python.org/3/library/random.html
Correction
a.
| Élément | Valeur |
|---|---|
| Protocole | https |
| Nom de domaine | www.lycée-exemple.fr |
| Chemin | /cours/maths/ |
| Ressource | chapitre1.html |
b.
| Élément | Valeur |
|---|---|
| Protocole | http |
| Nom de domaine | info.univ-paris.fr |
| Chemin | /etudiants/ |
| Ressource | inscription.php |
c.
| Élément | Valeur |
|---|---|
| Protocole | https |
| Nom de domaine | docs.python.org |
| Chemin | /3/library/ |
| Ressource | random.html |
Exercice 5 - URL relative et URL absolue¶
On considère l'arborescence suivante d'un site Web :
1. Expliquer la différence entre une URL relative et une URL absolue.
2. Depuis la page index.html, écrire l'URL relative pour accéder à top10.html.
3. Depuis la page top10.html, écrire l'URL relative pour afficher l'image logo.png.
4. Écrire le code HTML d'un lien dans top10.html qui renvoie vers index.html.
Correction
1. Une URL absolue donne l'adresse complète d'une ressource depuis le protocole (ex : https://mon-site.fr/images/logo.png). Une URL relative indique le chemin par rapport à la page courante (ex : ../images/logo.png). L'URL relative est plus pratique pour les liens internes d'un même site.
2. Depuis index.html (à la racine) : pages/top10.html
3. Depuis top10.html (dans pages/), il faut remonter d'un niveau : ../images/logo.png
4. <a href="../index.html">Retour à l'accueil</a>
Exercice 6 - HTML et CSS : rôle de chacun¶
On donne le code HTML suivant :
Et la règle CSS :
1. Que se passe-t-il si l'on supprime le fichier CSS ? La page est-elle encore lisible ?
2. Que se passe-t-il si l'on modifie color: red en color: green ?
3. Pourquoi sépare-t-on le HTML et le CSS dans des fichiers différents ?
Correction
1. Si l'on supprime le CSS, la page reste lisible : le navigateur affiche le contenu avec ses styles par défaut (titre en gros et gras, texte en noir sur fond blanc). Le contenu HTML ne change pas, seule la présentation revient aux valeurs par défaut.
2. Le titre « Bienvenue » s'affichera en vert au lieu de rouge. Le reste de la page ne change pas.
3. La séparation permet de :
- Modifier l'apparence du site sans toucher au contenu.
- Appliquer le même style à toutes les pages du site avec un seul fichier CSS.
- Faciliter la maintenance : un designer peut travailler sur le CSS pendant qu'un rédacteur travaille sur le HTML.
Exercice 7 - Moteur de recherche¶
1. Remettre dans l'ordre les étapes du fonctionnement d'un moteur de recherche :
- A. Les résultats sont classés par pertinence et affichés à l'utilisateur.
- B. Des robots explorent le Web en suivant les liens hypertextes.
- C. Les pages découvertes sont analysées et stockées dans un index.
- D. L'utilisateur saisit une requête avec des mots clés.
2. Pourquoi le premier résultat affiché par un moteur de recherche n'est-il pas forcément le plus fiable ?
3. Citer deux critères utilisés par Google pour classer ses résultats.
Correction
1. L'ordre correct est : B (exploration) → C (indexation) → D (requête de l'utilisateur) → A (classement et affichage).
2. Le premier résultat peut être une publicité payante (annonce). Même pour les résultats naturels, les algorithmes favorisent la popularité (nombre de liens pointant vers la page) plutôt que la véracité de l'information. Un site populaire n'est pas forcément fiable. Il faut toujours croiser les sources.
3. Deux critères parmi : la pertinence des mots clés, la popularité de la page (nombre de liens entrants - PageRank), la qualité technique (vitesse, HTTPS, compatibilité mobile), la fraîcheur du contenu, le taux de clics.
Exercice 8 - Cookies et vie privée¶
1. Quelle est la différence entre un cookie de session et un cookie permanent ?
2. Qu'est-ce qu'un cookie tiers ? Pourquoi est-il particulièrement problématique pour la vie privée ?
3. Un site de commerce en ligne vous propose de « rester connecté » entre vos visites. Quel type de cookie utilise-t-il ?
4. Votre ami affirme : « En navigation privée, je suis complètement anonyme sur Internet. » A-t-il raison ? Justifier.
Correction
1. Un cookie de session est temporaire : il est supprimé à la fermeture du navigateur (ex : panier d'achat). Un cookie permanent reste stocké sur l'ordinateur entre les visites (ex : identifiant de connexion, langue préférée).
2. Un cookie tiers est déposé par un site différent de celui que l'on visite (souvent une régie publicitaire). Il est problématique car il permet de suivre l'utilisateur d'un site à l'autre, de dresser un profil de ses habitudes de navigation et d'afficher de la publicité ciblée.
3. Il utilise un cookie permanent qui stocke l'identifiant de connexion et persiste entre les visites.
4. Non, il a tort. La navigation privée empêche le navigateur de conserver l'historique et les cookies localement (sur l'ordinateur) après la session. Mais le fournisseur d'accès à Internet, les serveurs des sites visités et les administrateurs du réseau peuvent toujours voir les pages consultées. La navigation privée ne rend pas anonyme sur Internet.
Exercice 9 - QCM¶
Pour chaque question, indiquer la ou les bonnes réponses.
1. Le contenu d'une page Web (textes, images...) est écrit dans un fichier :
- a)
.jpg - b)
.html - c)
.css - d)
.exe
2. Le style d'une page Web (couleurs, polices...) est défini dans un fichier :
- a)
.jpg - b)
.html - c)
.css - d)
.exe
3. La balise HTML qui permet de créer un lien hypertexte est :
- a)
<p> - b)
<a> - c)
<link> - d)
<li>
4. Un moteur de recherche classe généralement ses résultats :
- a) par taille de fichier
- b) par date de création
- c) par ordre de popularité et de pertinence
- d) par ordre alphabétique
5. Peut-on recevoir un cookie d'un site que l'on n'a jamais visité ?
- a) Oui
- b) Non
Correction
1. b) .html
2. c) .css
3. b) <a>
4. c) par ordre de popularité et de pertinence
5. a) Oui, c'est le principe des cookies tiers : un élément d'une page (publicité, bouton de partage d'un réseau social) peut déposer un cookie provenant d'un site que l'on n'a jamais directement visité.
Exercice 10 - Simuler un surfeur aléatoire (Python)¶
On considère quatre pages Web A, B, C et D reliées par des liens hypertextes :
- A pointe vers B et D
- B pointe vers C
- C pointe vers A et D
- D pointe vers A, B et C
Un « surfeur aléatoire » visite ces pages en suivant un lien choisi au hasard à chaque étape.
1. Représenter ce réseau sous forme d'un dictionnaire Python où chaque clé est une page et chaque valeur est la liste des pages accessibles.
2. Écrire une fonction etape_suivante(page, liens) qui, étant donné la page actuelle et le dictionnaire des liens, renvoie une page choisie au hasard parmi les pages accessibles.
3. Écrire un programme qui simule 1000 étapes d'exploration à partir de la page A, puis affiche le nombre de visites de chaque page.
Correction
import random
# 1. Dictionnaire des liens
liens = {
"A": ["B", "D"],
"B": ["C"],
"C": ["A", "D"],
"D": ["A", "B", "C"]
}
# 2. Fonction étape suivante
def etape_suivante(page, liens):
destinations = liens[page]
return random.choice(destinations)
# 3. Simulation de 1000 étapes
page_actuelle = "A"
visites = {"A": 0, "B": 0, "C": 0, "D": 0}
for _ in range(1000):
visites[page_actuelle] += 1
page_actuelle = etape_suivante(page_actuelle, liens)
# Affichage des résultats
print("Nombre de visites après 1000 étapes :")
for page, nb in visites.items():
print(f" Page {page} : {nb} visites")
On observe que les pages ayant le plus de liens entrants (comme A et D, pointées par plusieurs pages) sont visitées plus souvent. C'est le principe simplifié du PageRank de Google : une page est d'autant plus « importante » que de nombreuses pages pointent vers elle.
🧪 Activités en classe¶
Activité 1 - Le surfeur aléatoire (avec un dé)¶
Objectif
Comprendre le principe du PageRank en simulant manuellement le comportement d'un surfeur aléatoire sur un petit réseau de pages Web.
Matériel¶
- Un dé à 6 faces par groupe.
- La feuille de comptage ci-dessous.
- Un crayon.
Le réseau de pages¶
On considère 5 pages Web (A, B, C, D, E) reliées par les liens suivants :
A → B, C (2 liens sortants)
B → C (1 lien sortant)
C → A, D, E (3 liens sortants)
D → A (1 lien sortant)
E → B, D (2 liens sortants)
Représentation en graphe
Dessinez ce réseau sur votre feuille : chaque page est un cercle, chaque lien est une flèche orientée.
Règle du jeu¶
- Départ : le surfeur commence sur la page A.
- À chaque tour, lancez le dé :
- Si la page actuelle a 1 lien sortant : le surfeur suit ce lien quel que soit le résultat du dé.
- Si la page actuelle a 2 liens sortants : résultat 1-3 → premier lien ; résultat 4-6 → deuxième lien.
- Si la page actuelle a 3 liens sortants : résultat 1-2 → premier lien ; 3-4 → deuxième lien ; 5-6 → troisième lien.
- Notez la page visitée à chaque tour en faisant un bâton dans la feuille de comptage.
- Répétez pendant 50 tours (ou 100 si le temps le permet).
Feuille de comptage¶
| Page | Bâtons | Total |
|---|---|---|
| A | ||
| B | ||
| C | ||
| D | ||
| E |
Questions¶
1. Quelle page a été la plus visitée dans votre groupe ? Et la moins visitée ?
2. Comparez vos résultats avec ceux des autres groupes. Les classements sont-ils identiques ? Les proportions sont-elles similaires ?
3. Comptez le nombre de liens entrants de chaque page (combien de flèches arrivent sur chaque page). Comparez avec le classement obtenu.
4. La page B a peu de liens entrants. Peut-elle quand même être bien classée ? Pourquoi ?
5. Imaginez qu'une page F soit ajoutée, avec un seul lien vers elle-même (F → F). Que se passerait-il si le surfeur arrivait sur cette page ?
6. En quoi cette activité illustre-t-elle les notions de puits et de poche Web vues en cours ?
Correction
1. En théorie, la page A devrait être la plus visitée car elle reçoit des liens depuis C et D (deux pages qui sont elles-mêmes accessibles depuis de nombreuses autres pages). La page B est souvent parmi les moins visitées car un seul lien pointe directement vers elle depuis le réseau principal (depuis E).
2. Les classements entre groupes ne seront pas identiques à cause du hasard, mais les proportions devraient converger : les pages les plus « populaires » (beaucoup de liens entrants) auront des pourcentages proches d'un groupe à l'autre. Plus le nombre de tours est élevé, plus les résultats convergent.
3. Liens entrants : A reçoit des liens de C et D (2 liens entrants) ; B reçoit des liens de A et E (2) ; C reçoit des liens de A et B (2) ; D reçoit des liens de C et E (2) ; E reçoit un lien de C (1). Le nombre de liens entrants est un premier indicateur, mais la qualité des pages qui envoient ces liens compte aussi (c'est la récursivité du PageRank).
4. La page B peut être bien classée si les pages qui pointent vers elle (A et E) sont elles-mêmes bien classées. C'est le principe récursif du PageRank : ce n'est pas seulement le nombre de liens entrants qui compte, mais aussi l'importance des pages qui envoient ces liens.
5. La page F serait un puits (ou plus précisément une boucle fermée) : le surfeur qui y arrive ne peut plus en sortir et tourne indéfiniment sur F. C'est exactement le problème que le facteur d'amortissement (15 % de téléportation aléatoire) résout dans l'algorithme PageRank réel.
6. La page F (qui boucle sur elle-même) est un exemple de poche Web. Une page sans aucun lien sortant serait un puits. Dans les deux cas, le surfeur est piégé. Le facteur d'amortissement de 85 %/15 % introduit dans PageRank garantit qu'en moyenne, le surfeur se « téléporte » régulièrement vers une page aléatoire, évitant ces pièges.
Activité 2 - Frise chronologique du Web¶
Objectif
Situer les grandes étapes du Web dans le contexte de l'histoire mondiale pour mieux comprendre l'évolution rapide de cette technologie.
Partie A - Construction de la frise (travail en groupe)¶
Par groupes de 3-4 élèves, construire une frise chronologique de 1965 à aujourd'hui qui mêle :
- les événements du Web (en haut de la frise) ;
- les événements historiques mondiaux (en bas de la frise).
Événements du Web à placer obligatoirement :
| Date | Événement |
|---|---|
| 1965 | Ted Nelson invente le concept d'hypertexte |
| 1989 | Tim Berners-Lee invente le Web au CERN |
| 1990 | Premier site Web et premier navigateur |
| 1993 | Navigateur Mosaic (premier navigateur grand public) |
| 1995 | Création de JavaScript et de PHP |
| 1998 | Création de Google et du PageRank |
| 2001 | Standardisation du DOM ; lancement de Wikipédia |
| 2005 | Web 2.0 (blogs, réseaux sociaux) |
| 2010 | HTML5 et explosion du Web mobile |
Événements mondiaux à placer obligatoirement :
| Date | Événement |
|---|---|
| 1969 | Premier pas sur la Lune |
| 1989 | Chute du mur de Berlin |
| 1991 | Dissolution de l'URSS |
| 1993 | Création de l'Union européenne |
| 2001 | Attentats du 11 septembre |
| 2008 | Crise financière mondiale |
| 2010 | Printemps arabe |
Conseil
Utilisez une grande feuille A3 en format paysage. Tracez un axe horizontal avec des graduations régulières pour les années. Placez les événements Web au-dessus de l'axe et les événements mondiaux en dessous.
Partie B - QCM croisé (travail en groupe)¶
Chaque groupe rédige un QCM de 5 questions portant sur les liens entre les événements du Web et le contexte mondial. Exemples de questions possibles :
- « Quel événement mondial majeur s'est produit la même année que l'invention du Web ? »
- « Le navigateur Mosaic est apparu avant ou après la création de l'Union européenne ? »
Les groupes échangent ensuite leurs QCM et y répondent.
Partie C - Mini-exposé¶
Chaque groupe prépare un exposé de 3 minutes sur l'un des événements du Web suivants (tiré au sort) :
- L'invention de l'hypertexte par Ted Nelson
- L'invention du Web par Tim Berners-Lee
- Le navigateur Mosaic et la démocratisation du Web
- La création de Google et du PageRank
- Le Web 2.0 et les réseaux sociaux
Correction - Éléments de réponse pour le QCM
- L'invention du Web (1989) coïncide avec la chute du mur de Berlin.
- Mosaic (1993) est apparu la même année que la création de l'Union européenne (traité de Maastricht entré en vigueur).
- Google (1998) a été créé environ 7 ans après la dissolution de l'URSS (1991).
- Le Web 2.0 (2005) s'est développé dans un contexte de démocratisation mondiale d'Internet, avec YouTube lancé la même année.
- HTML5 et le Web mobile (2010) ont joué un rôle clé dans le Printemps arabe, permettant la diffusion rapide d'informations via les réseaux sociaux.
Activité 3 - Ma première page HTML/CSS¶
Objectif
Prendre en main les langages HTML et CSS en modifiant une page Web existante.
Préparation¶
Votre professeur vous fournit deux fichiers de départ. Créez un dossier mon-site sur votre bureau et placez-y ces deux fichiers :
Fichier index.html :
<!DOCTYPE html>
<html lang="fr">
<head>
<title>Ma page</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="style.css" />
</head>
<body>
<h1>Bienvenue sur ma page</h1>
<p class="intro">Ceci est une page de test pour apprendre
le HTML et le CSS.</p>
<h2>Mes centres d'intérêt</h2>
<ul>
<li>La musique</li>
<li>Le sport</li>
<li>Les jeux vidéo</li>
</ul>
<img src="https://placecats.com/300/200" alt="Un chat mignon" />
<p>Voici un lien utile :
<a href="https://fr.wikipedia.org">Wikipédia</a>
</p>
</body>
</html>
Fichier style.css :
body {
background-color: white;
font-family: Arial, sans-serif;
margin: 40px;
color: #333;
}
h1 {
color: darkblue;
text-align: center;
}
h2 {
color: darkblue;
}
.intro {
font-style: italic;
color: #666;
}
img {
display: block;
margin: 20px auto;
border: 2px solid #ccc;
border-radius: 8px;
}
a {
color: royalblue;
}
Étape 1 - Observer et comprendre¶
Ouvrez index.html dans un navigateur (double-clic). Observez le résultat.
1. Quel texte apparaît dans l'onglet du navigateur ? Quelle balise HTML le définit ?
2. De quelle couleur est le titre principal ? Quelle règle CSS est responsable ?
3. Le texte d'introduction est en italique. Quelle propriété CSS produit cet effet ?
Correction
1. L'onglet affiche « Ma page », défini par la balise <title>Ma page</title> dans le <head>.
2. Le titre principal est en bleu foncé (darkblue). C'est la règle h1 { color: darkblue; } qui en est responsable.
3. C'est la propriété font-style: italic; dans la règle .intro { ... }.
Étape 2 - Modifier le HTML¶
Ouvrez index.html dans un éditeur de texte (Bloc-notes, Notepad++, VS Code...). Effectuez les modifications suivantes, puis rechargez la page dans le navigateur après chaque changement pour vérifier le résultat.
4. Changez le titre principal (<h1>) pour qu'il affiche votre prénom, par exemple : « Bienvenue sur la page de Léa ».
5. Remplacez les trois centres d'intérêt par les vôtres.
6. Ajoutez un deuxième paragraphe sous le paragraphe d'introduction, décrivant en une phrase votre activité préférée. Utilisez la balise <p>.
7. Mettez un mot de votre choix en gras avec la balise <strong> et un autre en italique avec la balise <em>.
Correction
4. Remplacer <h1>Bienvenue sur ma page</h1> par <h1>Bienvenue sur la page de Léa</h1>.
5. Remplacer les <li> existants par ses propres centres d'intérêt.
6. Ajouter par exemple : <p>J'adore le <strong>basketball</strong> car c'est un sport d'<em>équipe</em> passionnant.</p> après le paragraphe class="intro".
7. <strong> rend le texte gras, <em> le met en italique.
Étape 3 - Modifier le CSS¶
Ouvrez style.css dans l'éditeur de texte.
8. Changez la couleur de fond de la page (background-color dans body) en une couleur de votre choix (par exemple : #f0f8ff, lightyellow, #ffe4e1...).
9. Changez la couleur du titre h1 (par exemple : crimson, #2e8b57, purple...).
10. Ajoutez une bordure colorée autour du paragraphe d'introduction en ajoutant ces propriétés dans la règle .intro :
11. Changez la police de caractères du body en "Courier New", monospace. Que constatez-vous ?
Correction
8. Par exemple : background-color: lightyellow; donne un fond jaune pâle à la page.
9. Par exemple : h1 { color: crimson; } rend le titre rouge cramoisi.
10. Le paragraphe d'introduction est désormais encadré par une bordure bleue avec des coins arrondis et un espace intérieur (padding) pour que le texte ne touche pas la bordure.
11. La police change pour une police à chasse fixe (toutes les lettres ont la même largeur, comme dans un terminal). Cela montre l'impact du CSS sur l'apparence globale de la page sans modifier le contenu HTML.
Étape 4 - Ajouter une classe CSS¶
12. Dans style.css, créez une nouvelle classe .important :
.important {
background-color: #fff3cd;
padding: 8px;
border-left: 4px solid #ffc107;
font-weight: bold;
}
Puis, dans index.html, appliquez cette classe à l'un de vos paragraphes en ajoutant class="important" dans la balise <p>. Rechargez la page.
13. Expliquez en une phrase le rôle de l'attribut class en HTML et son lien avec le CSS.
Correction
12. Le paragraphe ciblé apparaît avec un fond jaune pâle, une bordure jaune à gauche et un texte en gras. La classe CSS permet de cibler un élément précis sans modifier tous les éléments du même type.
13. L'attribut class en HTML permet d'associer un élément à une règle CSS spécifique, identifiée par un point suivi du nom de la classe (.important). Cela permet de donner un style particulier à certains éléments seulement, sans affecter tous les éléments du même type (tous les <p> par exemple).
🎯 Projet final - Créer un mini-site¶
Objectif
Créer un site Web de 2 à 3 pages HTML reliées entre elles par des liens hypertextes, avec une feuille de style CSS commune. Ce projet mobilise toutes les notions du thème : HTML, CSS, liens hypertextes, URL relatives, séparation fond/forme.
Consignes¶
Thème¶
Choisissez un sujet qui vous passionne : un sport, un artiste, un pays, un jeu vidéo, un animal, une cause qui vous tient à cœur... Le thème est libre.
Structure attendue¶
Votre site doit contenir au minimum :
| Élément | Exigence |
|---|---|
| Pages | 2 à 3 fichiers .html (par exemple : index.html, page2.html, page3.html) |
| Feuille de style | 1 fichier style.css commun à toutes les pages |
| Liens internes | Chaque page doit contenir au moins un lien vers une autre page du site (URL relatives) |
| Lien externe | Au moins un lien vers un site extérieur (URL absolue) |
| Images | Au moins une image par page (avec un attribut alt descriptif) |
| Structure HTML | Chaque page doit avoir un <head> complet (titre, charset, lien CSS) et un <body> structuré |
Contenu HTML minimal par page¶
- Un titre principal (
<h1>) et au moins un sous-titre (<h2>) - Au moins deux paragraphes (
<p>) - Au moins une liste à puces ou numérotée (
<ul>/<ol>) - Du texte en gras (
<strong>) et en italique (<em>)
Style CSS minimal¶
Votre fichier style.css doit contenir au minimum :
- Une couleur de fond pour
body - Une police de caractères pour
body - Un style pour les titres (
h1,h2) : couleur, alignement... - Un style pour les liens (
a) : couleur, survol (a:hover) - Au moins une classe personnalisée utilisée dans le HTML
Organisation des fichiers¶
mon-mini-site/
index.html
page2.html
page3.html (facultatif)
style.css
images/
image1.jpg
image2.jpg
Respect du droit d'auteur
Les images utilisées doivent être libres de droits. Vous pouvez en trouver sur Unsplash, Pexels ou Pixabay. Indiquez la source dans un commentaire HTML : <!-- Image : Unsplash, auteur XYZ -->.
Barème indicatif¶
| Critère | Points |
|---|---|
Structure HTML correcte (balises bien fermées, <head> complet) |
/4 |
| Contenu riche et structuré (titres, paragraphes, listes, images) | /4 |
| Liens internes fonctionnels entre les pages (URL relatives) | /3 |
| Lien externe fonctionnel (URL absolue) | /1 |
| Feuille CSS commune avec styles variés | /4 |
| Utilisation d'au moins une classe CSS personnalisée | /2 |
| Originalité et soin apporté au contenu | /2 |
| Total | /20 |
Conseils¶
Méthodologie
- Commencez par le contenu : écrivez d'abord tout le texte dans vos fichiers HTML, sans vous soucier de l'apparence.
- Ajoutez les liens : vérifiez que la navigation entre vos pages fonctionne (cliquez sur chaque lien).
- Stylisez ensuite : travaillez le fichier CSS pour donner une apparence agréable et cohérente à votre site.
- Testez souvent : rechargez la page dans le navigateur après chaque modification pour voir le résultat.
Correction - Exemple de structure
Voici un exemple minimal pour un site sur le basketball :
index.html (page d'accueil) :
<!DOCTYPE html>
<html lang="fr">
<head>
<title>Mon site sur le basketball</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="style.css" />
</head>
<body>
<h1>Le basketball</h1>
<p class="intro">Bienvenue sur mon site consacré au
<strong>basketball</strong>, un sport collectif passionnant !</p>
<h2>Présentation</h2>
<p>Le basketball est un sport d'équipe inventé en
<em>1891</em> par James Naismith au Canada. Il oppose
deux équipes de cinq joueurs sur un terrain rectangulaire.</p>
<h2>Navigation</h2>
<ul>
<li><a href="regles.html">Les règles du jeu</a></li>
<li><a href="joueurs.html">Les grands joueurs</a></li>
</ul>
<img src="images/basket.jpg"
alt="Un terrain de basketball" />
<p>Pour en savoir plus :
<a href="https://fr.wikipedia.org/wiki/Basket-ball">
Wikipédia - Basket-ball</a></p>
</body>
</html>
style.css :
body {
background-color: #fafafa;
font-family: "Segoe UI", Arial, sans-serif;
margin: 30px;
color: #222;
}
h1 {
color: #e65100;
text-align: center;
border-bottom: 3px solid #e65100;
padding-bottom: 10px;
}
h2 {
color: #bf360c;
}
.intro {
font-size: 18px;
background-color: #fff3e0;
padding: 12px;
border-radius: 6px;
}
a {
color: #1565c0;
text-decoration: none;
}
a:hover {
text-decoration: underline;
color: #0d47a1;
}
img {
display: block;
max-width: 400px;
margin: 20px auto;
border-radius: 8px;
border: 2px solid #ddd;
}
Ce fichier CSS est partagé par les trois pages (index.html, regles.html, joueurs.html) grâce à la même balise <link> dans chaque <head>. Il suffit de modifier style.css pour changer l'apparence de tout le site d'un coup.