Web et HTML

Licence Informatique, semestre 6

Alexandre NiveauJean-Marc Lecarpentier — Judith Jeyafreeda Andrew

Enseignement des technologies du Web

 

Web et HTML

Notes de cours

  • Le web, c’est quoi et comment ça marche ?
    • Rappels sur Internet
    • Le World Wide Web : définition et principes de base
    • Les constituants principaux du web : HTTP, URL, HTML
  • HTML : la base du web
    • Balisage et structure de documents
    • Les règles de HTML
    • Notions d’hypertexte
    • Notions d’accessibilité
    • Les éléments de structuration d’HTML5

Travail personnel

Objectifs

Cette première séance de TP est essentielle puisque l'on met en place l'environnement de travail que l'on utilisera tout au long des TP, et que l'on aborde les bases du développement web avec la création et la validation de pages HTML.

Réalisez avec attention la mise en place de votre environnement de travail : le temps passé sera largement gagné ensuite en temps de développement grâce aux fonctionnalités des outils proposés.

Outre cette mise en place, les exercices ont pour objectif de voir ou revoir les bases de HTML, avec une difficulté graduelle, en particulier pour les premiers exercices. Le TP est très guidé au début, pour garantir que tout le monde comprenne les bases. Les exercices sont plus ou moins en auto-apprentissage ; l'utilisation des ressources du web pour apprendre de nouvelles techniques est en effet l'outil fondamental du développeur web !

Exercice 1 — Mise en place de l’environnement de travail : Hello world #

Fonctionnement de l'espace personnel

Le département met à votre disposition un espace personnel sur le web. Son fonctionnement est expliqué sur cette page de la FAQ du département, de manière un peu technique. Ci-dessous, un résumé très incomplet, mais qui se veut plus accessible pour les non-initié·e·s.

Votre espace personnel se divise en deux parties :

  • une partie publique, à l'adresse https://NUMETU.users.info.unicaen.fr/, accessible par le monde entier : vous pouvez y héberger des pages personnelles.
  • une partie privée, à l'adresse https://dev-NUMETU.users.info.unicaen.fr/, accessible uniquement par etupass/persopass (sauf à l'intérieur de l'université). Cet espace est dédié au développement : il est recommandé d'y faire les TP.

Attention : tout ce qui est publié dans votre espace personnel l'est sous votre entière responsabilité.

Cet espace personnel est hébergé sur un serveur web. Pour y publier des pages, il faut les transférer sur le serveur. Pour cela, plusieurs solutions sont possibles : utiliser un client SFTP ou monter l'espace personnel sur votre machine. Ces deux possibilités sont détaillées dans la section « Connexion au serveur » de la FAQ : allez la lire.

Sur le serveur, votre espace est dans le répertoire /users/NUMETU/. Il contient en particulier quatre répertoires :

  • www-prod correspond à la partie publique de votre site,
  • www-dev correspond à la partie privée de votre site,
  • private est inaccessible depuis le web (on y met des fichiers contenant des mots de passe, par exemple),
  • tmp contient les fichiers temporaires (upload).

Pour information, votre espace personnel a une interface web d'administration, à l'adresse https://NUMETU.users.info.unicaen.fr/myadmin/, qui permet notamment de consulter les messages d'erreur du serveur. Pour finir, la FAQ contient pas mal d'autres informations, notamment techniques ; assurez-vous de l'avoir consultée avant de poser des questions.

Questions

  1. Accédez au répertoire www-dev de votre espace personnel et créez-y un fichier index.html.
  2. Ouvrez-le avec votre éditeur favori (si vous ne savez pas lequel choisir, prenez Geany, simple et relativement complet et léger).
  3. Écrivez n'importe quoi dedans, par exemple Hello world. Enregistrez.
  4. Ouvrez Firefox (on n'utilisera que Firefox dans ce module) et rendez vous à l'URL https://dev-NUMETU.users.info.unicaen.fr/. Vous devriez voir ce que vous avez écrit dans le fichier. Si ce n'est pas le cas, demandez de l'aide.
  5. Essayez d'utiliser des balises HTML dans le fichier, comme h1, em, strong, p, etc. (liste de tous les éléments HTML5) et regardez le résultat.
  6. La page ainsi créée n'est pas valide. Complétez-la en ajoutant les éléments nécessaires (voir « page minimale » dans le cours).
  7. Vérifiez que votre page est valide en utilisant le validateur du W3C ou son clone sur le serveur de l'université (qui supporte plus de charge). Modifiez-la jusqu'à ce qu'elle le soit.
  8. Dans Firefox, expérimentez le raccourci « Control-u » pour afficher le code source de la page. Essayez sur d'autres pages du web. Cette fonction est également accessible dans le menu contextuel (clic droit).
  9. Renommez votre page hello.html et actualisez la page dans le navigateur : que se passe-t-il et pourquoi ?
  10. Créez un fichier squelette.html qui contient un squelette de page HTML5 vierge. Faites attention à ce que l'encodage du fichier soit UTF-8 (vérifiez dans les préférences de votre éditeur). Ce squelette est à conserver à portée de main ou à intégrer à une fonction dans votre éditeur : par la suite, il est important de pouvoir créer une page web vierge très rapidement.
  11. Vérifiez que votre page-squelette est bien valide, puis créez un répertoire pour ce TP, par exemple tp1.

Attention à bien organiser votre serveur web, et attention aussi à ne pas y mettre tous vos fichiers, mais seulement ceux qui ont des raisons d'y être !

Exercice 2 — Le web, Tim et Mosaic #

Un corrigé de la partie HTML de cet exercice est disponible (archive).

On vous fournit une image d'une page web, avec les styles de base du navigateur.

Capture d'écran de la page
Capture d'écran de la page

Écrire en HTML5 valide le code permettant d'obtenir cette page. On utilisera les balises a, h1, h2, img, li, p et ul. Les images, le modèle et le texte peuvent être récupérés dans cette archive.

NB : l'apparence (polices, tailles, détails…) d'une page en pur HTML peut varier fortement suivant le navigateur et le système d'exploitation. L'image fournie représente le rendu de Firefox sur une machine Ubuntu du département.

Exercice 3 — Structure de page et HTML5 #

Une proposition de correction de cet exercice est disponible (archive). Ce n’est qu’une possibilité, on aurait pu choisir une structuration différente. Les choix sont expliqués dans les commentaires du HTML. Note : le rendu n’a pas grand intérêt, c’est le code qui compte…

Voici une image d'une version simplifiée de la page Wikipedia de Robert Cailliau :

Une version simplifiée d'une page Wikipédia
Une version simplifiée d'une page Wikipédia

Vous ne pourrez pas reproduire cette image sans utiliser CSS, mais vous pouvez quand même vous « inspirer » de l'image pour écrire le HTML qui lui correspond.

L'objectif de l'exercice est de recréer le HTML correspondant à la page de référence en utilisant notamment des éléments HTML5 de structuration (main, nav, header, footer, article, section, aside, figure, etc.). Cherchez leur signification, dans le cours ou sur le web (en prenant garde aux sources de mauvaise qualité).

On vous donne dans cette archive le texte à utiliser (un peu différent de l'image de référence, ça n'a pas d'importance) et les images.

Attention, encore une fois, l'image de la page Wikipédia sert de référence pour identifier la structure de la page, mais on ne cherche pas à en reproduire l'apparence telle quelle (impossible sans CSS de toute façon) !

Exercice 4 (optionnel) — Manipulation des balises HTML #

Inspiré d’un exercice d’Hervé Le Crosnier

Un corrigé de cet exercice est disponible (HTML seul ; avec CSS ; archive). Attention, le rendu n’est pas forcément exactement le même sous Chrome que sous Firefox.

On vous fournit deux images de la même page web : la première est est la version avec les styles de base du navigateur, tandis que pour la seconde on a appliqué une feuille de style. Les images de Marylin et Tom, les modèles et le texte sont disponibles dans cette archive.

L'objectif de l'exercice sera de reproduire le premier modèle ; dans un prochain TP, on ajoutera une feuille de style pour obtenir le second modèle sans toucher le HTML. On vous montre le résultat dès à présent pour attirer votre attention sur les éléments qui seront stylés.

Écrire en HTML5 valide, sans CSS, le code permettant d'obtenir le premier modèle. On s'efforcera d'utiliser des éléments ayant une sémantique correcte. En particulier, interdiction d'utiliser les éléments div et span, et les attributs id et class ! Ne pas hésiter à s'inspirer de la liste des éléments HTML.

NB : les images fournies montrent le rendu obtenu avec Firefox (ce sera toujours le cas dans ce cours). Il est possible que le résultat ne soit pas tout à fait le même sous Chrome. Il est donc recommandé d'utiliser Firefox pour faire les TP.