RM

RM Fil_Rouge_Porto_Folio

Fil rouge — Création d’un Portfolio HTML5/CSS3

Objectif général

Construire pas à pas un site portfolio simple mais professionnel, qui servira de vitrine personnelle. À la fin, chaque stagiaire aura :


Partie 1 — Première page

Objectifs :

Consignes :

  1. Créer un fichier index.html.
  2. Ajouter la structure minimale :
<!DOCTYPE html>
<html lang="fr">
  <head>
    <meta charset="utf-8">
    <title>Portfolio de Prénom Nom</title>
  </head>
  <body>
    <h1>Prénom Nom</h1>
    <p>Développeur web en formation.</p>
  </body>
</html>

Checklist :


Partie 2 — Bases du HTML

Objectifs :

Consignes :

  1. Ajouter trois sections : « À propos », « Projets », « Contact ».

  2. Dans « Projets » :

    • une liste de 2–3 projets avec <ul> ou <ol>.
    • chaque projet a un lien <a>.
  3. Ajouter une image de profil avec alt.

Code modèle :

<h2>À propos</h2>
<p>Je suis passionné par le développement web.</p>

<h2>Projets</h2>
<ul>
  <li><a href="#">Projet 1</a></li>
  <li><a href="#">Projet 2</a></li>
</ul>

<h2>Contact</h2>
<img src="assets/img/profil.jpg" alt="Photo de Prénom Nom">

Checklist :


Partie 3 — Structure sémantique

Objectifs :

Consignes :

  1. Encapsuler :

    • <header> : nom + navigation <nav>.
    • <main> : sections « À propos » + « Projets ».
    • <aside> : une info secondaire (citation, hobby).
    • <footer> : copyright.

Code modèle :

<header>
  <h1>Prénom Nom</h1>
  <nav>
    <a href="#apropos">À propos</a>
    <a href="#projets">Projets</a>
    <a href="#contact">Contact</a>
  </nav>
</header>
<main>
  <section id="apropos"></section>
  <article id="projets"></article>
</main>
<aside>Une citation favorite</aside>
<footer>&copy; 2025 Prénom Nom</footer>

Checklist :


Partie 4 — Métadonnées et ressources

Objectifs :

Consignes :

  1. Ajouter :
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Portfolio de Prénom Nom, développeur web.">
<link rel="stylesheet" href="assets/css/style.css">
  1. (Optionnel) favicon :
<link rel="icon" href="assets/img/favicon.ico">

Checklist :


Partie 5 — Introduction au CSS

Objectifs :

Consignes :

  1. Créer assets/css/style.css.
  2. Ajouter :
body {
  font-family: system-ui, sans-serif;
  background: #f7f9fc;
  color: #222;
  margin: 0;
  padding: 1rem;
}
h1 {
  text-align: center;
  color: #204ecf;
}
.intro {
  font-style: italic;
}

Checklist :


Partie 6 — Mise en page moderne

Objectifs :

Consignes :

  1. Transformer le <main> en conteneur flex.
  2. Placer « Projets » et l’<aside> en colonnes.
  3. Ajouter un media query pour passer en une seule colonne sur mobile.

Code modèle :

main {
  display: flex;
  gap: 1rem;
}
#projets { flex: 1; }
aside { flex: 0 0 250px; }
@media (max-width: 800px) {
  main { flex-direction: column; }
}

Checklist :


Partie 7 — Médias et formulaires

Objectifs :

Consignes :

  1. Insérer une vidéo de présentation avec <iframe> (ex. YouTube).

  2. Ajouter un audio <audio> (ex. un jingle).

  3. Créer un formulaire :

    • Champ Nom (text)
    • Champ Email (email)
    • Champ Message (textarea)
    • Bouton Envoyer

Code modèle :

<h2>Contact</h2>
<form>
  <label for="nom">Nom</label>
  <input type="text" id="nom" name="nom" required>
  
  <label for="email">Email</label>
  <input type="email" id="email" name="email" required>
  
  <label for="message">Message</label>
  <textarea id="message" name="message" required></textarea>
  
  <button type="submit">Envoyer</button>
</form>

Checklist :


Partie 8 — Bonnes pratiques et outils

Objectifs :

Consignes :

  1. Tester sur https://validator.w3.org/

  2. Vérifier accessibilité :

    • Images → alt
    • Formulaires → label
    • Navigation → aria-label si besoin
  3. Supprimer balises obsolètes (<center>, <font>).

  4. Utiliser les outils développeur (inspecteur + console) pour vérifier le responsive et les erreurs JS.

Checklist :


Résultat final

Un portfolio HTML5/CSS3 responsive, contenant :