Méthode BEM en CSS : des classes claires pour des composants autonomes et maintenables
Problème de lecture
Cette vidéo ne semble pas disponible
00:00
00:00
Sous-titres non disponibles
1h13
de formation
14
leçons vidéo
3
chapitres
Intermédiaire
niveau requis
Carl Brison
Carl Brison
Formateur certifié

Méthode BEM en CSS : des classes claires pour des composants autonomes et maintenables

4.8/5 Trustpilot (1388 avis) Satisfait ou remboursé
1h13
de formation
14
leçons vidéo
3
chapitres

Vous ciblez une carte avec une chaîne comme main section div, puis vous la déplacez ou la dupliquez, et le style disparaît parce que le sélecteur dépendait de la structure HTML. La méthode BEM (Bloc, Élément, Modificateur) règle ce problème à la source : chaque composant porte ses propres classes, se lit d'un coup d'œil et fonctionne où que vous le posiez dans la page. Vous l'appliquez en live coding sur une carte de profil, puis sur une carte d'avis client complète avec sa variante mise en avant, le tout rangé dans une feuille de style organisée en cascade layers.

Méthode BEM : ce que vous saurez faire

À la fin du cours, la convention BEM devient un réflexe sur chaque composant que vous codez.

  • Rendre un composant indépendant de sa place dans la page
  • Nommer blocs et éléments avec la convention du double underscore
  • Décliner une variante sans réécrire le composant de base
  • Déclarer vos éléments à plat, sans chaîne de sélecteurs parents
  • Décider si un bouton appartient au bloc ou devient un composant
  • Ranger vos composants BEM dans une architecture en layers
  • Masquer des émojis décoratifs aux lecteurs d'écran

Modificateur BEM : une variante sans dupliquer le CSS

Le modificateur est ce qui fait gagner le plus de temps. La carte « premium » comme l'avis « à la une » reprennent tout ce que le bloc définit déjà, padding, largeur maximale, arrondi, et ne redéclarent que ce qui change : fond sombre, couleurs du nom et du texte, ombre plus marquée, badge positionné en haut à droite. Le cours montre aussi la limite de l'exercice : pour recolorer un élément dans la variante, on repart du sélecteur parent, ce que le nesting CSS permettra d'alléger dans l'épisode suivant de la série.

BEM et cascade layers : reset, base, components, utilities

La carte d'avis client se construit en trois temps, HTML sémantique, attributs ARIA, puis classes BEM, avant de passer au CSS. La feuille reprend les quatre layers vus dans le cours sur la cascade, la spécificité et les layers, et place chaque composant dans le layer components, commenté et ordonné comme le HTML. Une vidéo revient sur la carte produit codée dans cet épisode précédent pour y lire la structure BEM déjà en place. Côté accessibilité, les étoiles en émoji sont retirées de l'arbre d'accessibilité avec aria-hidden ; pour creuser ces attributs, voyez le cours sur les attributs ARIA essentiels.

Pour qui

Le badge Intermédiaire est justifié : vous écrivez déjà du HTML et du CSS sans aide, et vous connaissez Flexbox et le positionnement, que le cours utilise sans les réexpliquer. Il se suit seul pour apprendre BEM, mais la vidéo de reprise sera plus parlante si vous avez vu l'épisode sur les layers. Aucun framework ni préprocesseur : uniquement du CSS natif, écrit dans Visual Studio Code.

Pour aller plus loin

Vous voulez regrouper les éléments d'un bloc directement dans son sélecteur : le tuto gratuit sur le nesting CSS pose les bases de l'imbrication native que la série combinera ensuite avec BEM.

Qu’allez-vous apprendre dans ce cours ?

Plan de cours
Chapitre 1
Comprendre la méthode BEM
Chapitre 2
Atelier : carte d'avis client
Chapitre 3
Et ensuite : BEM et nesting CSS

Table des matières

Chapitre 1 : Comprendre la méthode BEM

31m54
 
Leçon 1Pourquoi BEM : rendre un composant indépendant
Leçon 2Nommer bloc et éléments d'une carte de profil
Leçon 3Créer une variante premium avec un modificateur
Leçon 4Lire la structure BEM de la carte produit

Chapitre 2 : Atelier : carte d'avis client

39m58
 
Leçon 1Présentation de la carte d'avis client
Leçon 2Structurer le HTML sémantique de l'avis
Leçon 3Insérer des étoiles en émoji sans librairie
Leçon 4Rendre la note accessible avec ARIA
Leçon 5Nommer les classes BEM de la carte d'avis
Leçon 6Déclarer les quatre cascade layers
Leçon 7Écrire les layers reset et base
Leçon 8Styliser le bloc et ses éléments à plat
Leçon 9Créer la variante à la une et son badge

Chapitre 3 : Et ensuite : BEM et nesting CSS

01m34
 
Leçon 1Prochaine étape : BEM et nesting CSS

Aperçus

Avis des apprenants

Détail des avis
1
Commentaire
5/5
Note moyenne
5/5
1
4/5
0
3/5
0
2/5
0
1/5
0
Richard Anctil
Richard Anctil
Publié le 06/10/2026
Super tuto, Merci Carl
Carl Brison
Carl Brison
Merci beaucoup, c'est super gentil ;-)

Vos questions sur le cours

Que contient le fichier source ?

L'intégralité des codes liés à ce tuto.

Qu'est-ce que la méthode BEM en CSS ?

BEM est une convention de nommage des classes CSS en trois niveaux : Bloc, Élément, Modificateur. Le bloc désigne le composant (review-card), l'élément une de ses parties, reliée par un double underscore (review-card__author), et le modificateur une variante, reliée par deux tirets. Chaque classe dit à quel composant elle appartient, ce qui évite les conflits de noms sur les gros projets.

La méthode BEM est-elle une norme du W3C ?

Non. BEM n'est pas une spécification du W3C mais une convention adoptée par les équipes de développement front-end. Le navigateur n'y voit que des classes CSS ordinaires : elle fonctionne partout, sans outil ni configuration.

BEM est-il compatible avec les cascade layers et le nesting CSS ?

Oui. Dans ce cours, les composants BEM sont rangés dans le layer components, à côté des layers reset, base et utilities. Le nesting CSS natif permet ensuite de regrouper les éléments dans le sélecteur de leur bloc : le tuto gratuit sur le nesting CSS en pose les bases.

Quand créer un élément BEM plutôt qu'un nouveau bloc ?

Une partie qui n'a de sens que dans son composant devient un élément, comme l'image ou le nom d'une carte. Une partie réutilisable ailleurs, comme un bouton, gagne à devenir un bloc à part avec sa propre classe et ses propres variantes. Le cours compare les deux choix sur le bouton d'une carte produit.

Le cours applique-t-il BEM avec JavaScript, React ou Sass ?

Non. Le cours travaille uniquement en HTML et CSS natif, sans framework, sans préprocesseur et sans JavaScript. La convention reste la même dans ces environnements, puisqu'elle ne porte que sur le nom des classes.

Comment accéder au cours et au fichier source ?

Le cours s'achète à l'unité ou se suit avec l'abonnement Tuto.com, depuis votre compte. Le fichier source rassemble le code HTML et CSS des exercices du cours.

Deux façons de suivre cette formation

À l'unité
Pour vous former sur ce sujet précis
12,95€
Paiement unique, sans abonnement
Accès à vie à cette formation
1h13 de vidéo • 3 chapitres
Satisfait ou remboursé voir conditions
Accès immédiat après paiement
Avec l'abonnement
Pour progresser en continu
34,90€ /mois
Sans engagement
Cette formation + 6 767 autres en illimité
Plus de 20 nouvelles formations par mois
Résiliable en 1 clic, à tout moment
Commencer avec l’abonnement
Accès immédiat, pendant votre abonnement

Inclus dans les deux formules

  • Hors connexion via l'app Tuto.com
  • Salon d'entraide pour vos questions
  • Certificat de complétion
Paiement sécurisé 1,4 million d'apprenants 4.8/5 Trustpilot
Logo carte-bancaire-monoLogo visa-monoLogo mastercardLogo paypal-monoLogo klarna-monoLogo apple-pay-monoLogo google-pay-mono
Une question avant de choisir ? Écrivez-nous ou appelez le 01 84 80 80 29 (du lundi au vendredi, 10h-12h et 14h-16h)

Formations complémentaires

Les apprenants qui suivent cette formation s'intéressent aussi à :

Abonnement 34,90€/mois

Attendez ! 🤗

Accédez à plus de 1424 tutos gratuits

Notre politique de protection des données