Le World Wide Web (ou simplement "le Web") est un système d'information global qui permet aux utilisateurs de partager des informations et des ressources via Internet. Il est composé de milliards de documents interconnectés, appelés pages web.
Le HTML est le langage utilisé pour créer la structure et le contenu d'une page web. Il utilise des "balises" pour définir les différents éléments : titres, paragraphes, images, liens, etc. Pensez au HTML comme au squelette ou à la charpente d'une maison.
Le CSS est le langage utilisé pour styliser la page web. Il permet de définir l'apparence des éléments HTML : couleurs, polices, tailles, espacements, positionnement. Le CSS est la décoration, la peinture, l'aménagement intérieur de notre maison.
Le HTML fournit le contenu et sa signification (c'est un titre, c'est un paragraphe). Le CSS prend ces éléments et leur donne un aspect visuel (ce titre est bleu, ce paragraphe est en police Arial).
Chaque page HTML suit une structure fondamentale :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Titre de ma page</title>
<!-- Lien vers notre feuille de style CSS -->
<link rel="stylesheet" href="styles.css">
</head>
<body>
<!-- Tout le contenu visible de la page va ici -->
</body>
</html>
<!DOCTYPE html> : Déclare le type de document comme HTML5.<html lang="fr"> : La balise racine de tout document HTML. L'attribut lang="fr" indique que le contenu est en français, ce qui est utile pour les navigateurs et les lecteurs d'écran.<head> : Contient les métadonnées de la page (informations sur la page, non visibles directement par l'utilisateur).
<meta charset="UTF-8"> : Définit l'encodage des caractères (essentiel pour afficher correctement les accents et caractères spéciaux).<meta name="viewport" content="width=device-width, initial-scale=1.0"> : Indispensable pour le design responsive (nous y reviendrons plus tard).<title> : Le titre qui apparaît dans l'onglet du navigateur.<link rel="stylesheet" href="styles.css"> : C'est ici que nous lions notre fichier CSS externe (styles.css) à notre page HTML.<body> : Contient tout le contenu visible de la page web.<h1> à <h6>
Utilisés pour structurer le contenu avec des titres et sous-titres. <h1> est le titre le plus important, <h6> le moins important. Il ne devrait y avoir qu'un seul <h1> par page.
<h1>Mon Titre Principal</h1>
<h2>Un Sous-Titre</h2>
<h3>Encore plus petit</h3>
<p>
Pour le texte courant, les blocs de texte.
<p>Ceci est un paragraphe de texte.</p>
<a> (Ancre)
Permettent de naviguer entre les pages ou vers des ressources externes. L'attribut href (Hypertext REFerence) est obligatoire et contient l'URL de destination.
<a href="https://www.google.com">Visiter Google</a>
<ul> (non ordonnée) et <ol> (ordonnée)
Utilisées pour présenter des éléments sous forme de liste. Chaque élément de la liste est défini par la balise <li> (List Item).
<ul> - Unordered List) :Utilise généralement des puces.
<ul>
<li>Pommes</li>
<li>Bananes</li>
<li>Oranges</li>
</ul>
<ol> - Ordered List) :Utilise généralement des numéros ou des lettres.
<img>
Pour afficher des images sur la page. C'est une balise auto-fermante (pas de balise de fermeture </img>).
src (SouRCe) est obligatoire et contient le chemin vers le fichier image.alt (ALTernative text) est obligatoire pour l'accessibilité et un code valide. Il fournit une description textuelle de l'image, lue par les lecteurs d'écran pour les personnes malvoyantes, ou affichée si l'image ne se charge pas.<img src="ma-image.jpg" alt="Description de l'image pour l'accessibilité">
Des images lourdes ralentissent considérablement un site. Pensez toujours à les optimiser :
<strong> : Indique que le texte est d'une importance forte (souvent affiché en gras par défaut).<em> : Indique que le texte doit être mis en emphase (souvent affiché en italique par défaut).<p>Ceci est un texte <strong>très important</strong> et cela est un texte <em>mis en emphase</em>.</p>
Maintenant que nous avons la structure HTML, voyons comment lui donner du style avec CSS.
Une règle CSS se compose d'un sélecteur (qui cible un élément HTML), et d'un bloc de déclarations (qui définissent le style). Chaque déclaration est une paire propriété: valeur;.
/* Ceci est un commentaire CSS */
/* Sélecteur de type : cible toutes les balises <p> */
p {
color: blue; /* Définit la couleur du texte en bleu */
font-size: 16px; /* Définit la taille de la police à 16 pixels */
}
/* Sélecteur de type : cible toutes les balises <h1> */
h1 {
background-color: lightgray; /* Définit la couleur de fond en gris clair */
text-align: center; /* Centre le texte */
font-family: Arial, sans-serif; /* Définit la police de caractères */
}
color : Définit la couleur du texte.background-color : Définit la couleur de fond d'un élément.font-size : Définit la taille de la police.font-family : Définit la police de caractères.text-align : Aligne le texte à l'intérieur de l'élément (left, right, center, justify).Pour que votre page HTML utilise ce CSS, assurez-vous que la ligne <link rel="stylesheet" href="styles.css"> est bien présente dans la section <head> de votre fichier HTML, et que le fichier styles.css se trouve dans le même dossier que votre fichier HTML.
<!doctype html>
<html lang="fr"><head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
</head>
<body class="bg-gray-50 min-h-screen flex items-center justify-center">
<div class="max-w-md w-full p-6 rounded-lg shadow-md bg-white">
<h1 class="text-2xl font-bold mb-4">Hello Tailwind (CDN)</h1>
<p class="text-gray-600">Paragraphe</p>
<button class="mt-4 px-4 py-2 rounded bg-blue-600 text-white hover:bg-blue-700">
Bouton
</button>
</div>
</body>
</html>
Vous avez peut-être remarqué des classes étranges dans les exemples HTML de cette séance (comme bg-slate-50, text-slate-800, p-8, etc.). Ces classes proviennent de Tailwind CSS, un "framework CSS utility-first".
Contrairement au CSS traditionnel où vous écrivez des règles dans un fichier .css pour styliser des éléments HTML, Tailwind CSS vous fournit des milliers de petites classes prédéfinies, chacune correspondant à une propriété CSS spécifique. Vous appliquez ces classes directement dans votre HTML pour construire rapidement des designs.
Pourquoi l'utiliser ?
Nous utiliserons Tailwind CSS dans nos exemples pour vous familiariser avec cette approche moderne du stylisme web. Vous apprendrez à écrire votre propre CSS en parallèle, et à comprendre comment les deux peuvent coexister.
Nous utiliserons VS Code (Visual Studio Code) comme éditeur de code.
seance1).index.html et styles.css.Pour rendre votre expérience de développement plus fluide, nous vous recommandons d'installer les extensions suivantes dans VS Code :
Créez un nouveau fichier HTML pour chaque exercice, ou modifiez le même fichier en ajoutant les éléments. N'oubliez pas de créer un fichier styles.css pour chaque exercice si vous ne travaillez pas sur le même fichier, et de le lier dans le <head>.
exercice1.html avec la structure de base et un fichier styles.css lié.<body> de exercice1.html, ajoutez :
<h1> avec votre nom.<p> qui dit "Bienvenue sur ma première page web !".styles.css, donnez au <h1> une color de votre choix et au <p> une font-size de 20px.exercice2.html et son styles.css :<a> qui pointe vers https://www.iut.u-bordeaux.fr/ avec le texte "Visiter le site de l'IUT de Bordeaux".styles.css, donnez au <a> une color différente et supprimez le soulignement par défaut avec text-decoration: none;.exercice3.html et son styles.css :<img>. N'oubliez pas l'attribut alt avec une description pertinente de l'image. (Ex: https://placehold.co/300x200/0000FF/FFFFFF?text=Ma+Photo)styles.css, donnez au <body> une background-color de votre choix.exercice4.html et son styles.css :<strong> et un autre mot est <em>.
styles.css, définissez une <font-family> différente pour le <body> (par exemple, Verdana, sans-serif) et donnez une color spécifique aux éléments <strong> et <em>.Pour ce TP, vous allez créer une page web simple qui vous présente.
Objectif : Utiliser toutes les balises et les propriétés CSS vues aujourd'hui pour créer une page structurée et informative.
tp-seance1.index.html et styles.css.index.html avec la structure de base et les éléments suivants :
<h1> avec votre nom complet.<h2> pour "À Propos de Moi".<p> vous décrivant brièvement. Utilisez <strong> et <em> pour mettre en valeur certains mots.https://placehold.co/200x200/0000FF/FFFFFF?text=Votre+Visage) avec un attribut alt descriptif.<h2> pour "Me Contacter".<a> vers un profil social fictif (ex: https://fictif.com/monprofil) ou votre adresse e-mail (ex: mailto:votre.email@example.com).styles.css, ajoutez des styles de base pour le <body> (color de fond, font-family de base), pour les titres <h1>, <h2> (color de texte, text-align, font-size), pour les paragraphes, les liens et les images.