Partie1 HTML CDL
Partie1 HTML CDL
Front End
Prof. Hafida ZROURI
e-mail : [email protected]
Introduction
Le développement web consiste à créer et gérer des sites et applications web. Il se
divise en deux parties principales : Front End et Back End.
1- Front End : C'est la partie visible et interactive d'un site web, celle avec
laquelle l'utilisateur interagit. Le développeur Front End utilise les langages
HTML, CSS et JavaScript pour construire l'interface et rendre l'expérience
utilisateur fluide.
2- Back End : C'est la partie côté serveur, invisible à l’utilisateur, qui gère la
logique, les bases de données et le traitement des informations. Le développeur
Back End utilise des langages comme PHP, Python ou Node.js pour assurer le
bon fonctionnement du site et traiter les données.
Ensemble, Front End et Back End permettent de créer des sites web fonctionnels
et interactifs.
- Partie 1 : HTML
- Partie 2 : CSS
- Partie 3 : JavaScript
Partie 1 : HTML
Qu'est-ce que HTML ?
HTML (Hyper Text Markup Language) est un langage de description de pages Web. Il
permet de présenter les documents hypertextes destinés à être affichés sur le
navigateur. [Un document hypertexte est un document qui contient des liens vers
d’autres documents (texte, sons, images, …)]
HTML est souvent enrichi par des langages complémentaires comme CSS (pour la mise en
forme) et JavaScript (pour l’interactivité).
Un document HTML est
✓ un fichier texte, construit suivant une syntaxe précise
✓ structuré par des balises, insensibles à la casse
✓ interprété (visualisé) dans un navigateur (Chrome, Mozilla Firefox, Microsoft
Edge Internet, Opera,…)
✓ créé dans un éditeur de pages web (NVU, Dreamweaver, …) ou tout éditeur de
texte (bloc-notes, Notepad++, sublime, …) et enregistrer avec le suffixe .html ou
.htm
La page d'accueil d'un site web (la page principale) est en général appelée index.html. Cela
permet d'atteindre le site en tapant juste l'URL (sans taper le nom de la page à la suite).
Les balises sont des commandes à l’intention du navigateur et saisies entre les
signes < et >. Ainsi une balise s’écrit <balise>.
La plupart des balises HTML fonctionnent par paires : une balise d'ouverture et
une de fermeture encadrant les informations du document. Les balises de
fermeture se reconnaissent à la barre oblique (/). Ainsi à la balise d’ouverture
<balise> correspondrait la balise de fermeture </balise>. Certaines balises
fonctionnent seules, comme <br> qui crée un saut de ligne.
Une balise pourra contenir des attributs, qui fournissent des informations
supplémentaires :
<balise attribut1="val1" attribut2="val2" …> … </balise>
Les commentaires doivent être précédés par <!-- et être fermés par -->.
Tout ce qui sera écrit entre <!-- et --> ne sera pas affiché à l’écran par le
navigateur. Notons cependant que ces commentaires restent visibles
lorsqu’on consulte le code source de la page.
Les commentaires peuvent occuper plusieurs lignes et peuvent être placés
indifféremment dans l’en-tête ou dans le corps du document.
Ils ne peuvent jamais apparaître à l'intérieur d'une balise ouvrante ou
fermante.
Remarque : Par défaut, la balise <ul> (et de même pour <ol>) crée un espace vertical
(marge d'environ 1em) avant et après la liste, ainsi qu'un espace à gauche de 40px
(padding-left : 40px). Ce style par défaut peut varier selon les navigateurs.
06/02/2025 Prof. Hafida ZROURI 18
Listes imbriquées
Les listes peuvent être imbriquées les unes dans les autres, ce
qui permet une présentation très claire.
L2
<tr> <td rowspan="2"> L12 </td> <td> L1 </td> </tr>
<tr> <td> L2 </td> </tr>
</table>
06/02/2025 Prof. Hafida ZROURI 25
Tableaux imbriqués
Les tableaux imbriqués permettent d’insérer un tableau dans
une cellule d’un autre tableau. Cela peut être utile pour
organiser des données complexes.
fichier1.html fichier2.html
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title> fichier1 </title> <title> fichier2 </title>
</head> </head>
<body> <body>
Ce fichier permet de lancer le suivant <br> Nous sommes dans fichier2.html
<a href="fichier2.html"> texte </body>
d'appel </a> </html>
</body> <!-- ici fichier1 et fichier2 sont dans le
</html> même répertoire -->
06/02/2025 Prof. Hafida ZROURI 29
Liens hypertextes
■ Lien vers une autre page :
Pour la création d’un site, il est fortement recommandé de regrouper tous les
fichiers relatifs au site dans un seul dossier. Ce dernier peut contenir des
sous-dossiers.
On indique donc le chemin depuis la page courante pour parvenir à la page cible.
Exemple :
- avec sujet :
<a href="mailto:adresseEmail?subject=ObjetMessage"> … </a>
Ex :
<a href="mailto:[email protected]">Contacter moi</a>
<a href="mailto:[email protected]?subject=Cours">Contacter moi</a>
<a href="mailto:[email protected]?subject=Cours&body=Les liens">Contacter moi</a>
Remarque : l’attribut title est un attribut universel qui peut être défini sur tous les
éléments HTML.
Exemple :
<form name="form1" method="GET" action="monFichier.php"> … </form>
<form method="POST" action="mailto:[email protected]" enctype="text/plain">
… </form>
Exemple :
<form>
Texte : <br> <input type="text" name="nom" value="Valeur par défaut"
size="48" >
</form>
size : (valeur par défaut 20) définit le nombre de caractères visibles de la ligne de
texte et par conséquent la largeur de la zone de texte. L’utilisateur peut
néanmoins taper autant de caractères qu’il souhaite.
value : définit la valeur par défaut de la ligne de texte. Celle-ci apparaît dans la
ligne de texte au chargement de la page.
readonly : indique que le champ de texte est en lecture seule. L’utilisateur peut
visualiser la valeur définie, mais il ne peut ni la modifier ni y saisir de nouvelles
données.
06/02/2025 Prof. Hafida ZROURI 53
Les formulaires
autofocus : donne le focus à l’élément lors du chargement de la page.
minlength : détermine le nombre minimal de caractères que l’utilisateur doit encoder
dans la ligne de texte.
required : indique que le champ doit être rempli pour pouvoir soumettre le
formulaire.
placeholder : permet d’afficher une suggestion de saisie qui apparaît en grisé dans le
champ de texte au chargement de la page. Ce texte disparaît dès que l’utilisateur
donne le focus à l’élément concerné (ou commence à écrire dedans).
Exemple : <input type="text" placeholder="Votre nom de famille">
Note : l’attribut value n’effectue pas la même fonction que l’attribut placeholder. Avec
value, l’utilisateur doit effacer le texte avant d’effectuer son propre encodage mais
avec placeholder, le texte est effacé automatiquement dès que le focus est donné à
l’élément. En outre, avec l’attribut value, en cas de soumission du formulaire sans
modification de cette valeur par défaut, c’est celle-ci qui sera transmise.
Exemple :
<form>
Mot de passe : <br>
<input type="password" name="pass" size="16">
</form>
Remarque : Si la valeur de value n'est pas définie, ce sera la chaîne de caractères "on" qui sera
envoyée.
06/02/2025 Prof. Hafida ZROURI 56
Les formulaires
■ Case à cocher : <input type="checkbox" … >
Les cases à cocher permettent à l'utilisateur de sélectionner un ou plusieurs choix
parmi une série d'options.
Attributs supplémentaires : name, value et checked.
Exemple :
<form>
<input type="checkbox" name="choix1" value="HTML" checked> HTML <br>
<input type="checkbox" name="choix2" value="JS">JavaScript<br>
<input type="checkbox" name="choix3" value="PHP">PHP
</form>
Exemple :
<input type="image" name="validation" src="disquette.png" width="49"
height="45" alt="Valider">
OU :
<button type="submit" name="validation">
<img src="disquette.png" width="49" height="45" alt="Valider">
</button>
suite
Exemple :
<form>
Zone de texte : <br>
<textarea name="texte" rows="7" cols="23">
Saisissez votre texte ici ...
</textarea>
</form>
Exemple :
<fieldset>
<legend>Programmation Web :</legend>
<input type="checkbox" name="choix1" value="HTML" checked>HTML <br>
<input type="checkbox" name="choix2" value="JS">JavaScript <br>
<input type="checkbox" name="choix3" value="PHP">PHP <br>
</fieldset>
■ XHTML offre les aspects XML mais ce n'est pas suffisant pour
toutes les applications que l'on souhaite mettre en œuvre sur le web.