CSS
Tout savoir sur le CSS
Le CSS (Cascading Style Sheets ou feuilles de style en cascade en français) est un langage essentiel du web qui permet de décrire l’apparence d’une page web. Aux côtés de HTML, qui définit la structure d’une page, CSS spécifie la position, la couleur, la taille, et bien plus encore pour les éléments de la page. Développé par le W3C dans les années 90, le CSS a révolutionné la manière dont nous définissons l’apparence des sites web en séparant le contenu de sa présentation. Aujourd’hui, CSS en est à sa version 3, continuellement enrichie de nouvelles fonctionnalités et améliorations 🎨
Les bonnes pratiques en CSS
Bien que considéré comme facile à apprendre, la maîtrise du CSS, en particulier pour des projets complexes, peut être difficile. Un mauvais usage du CSS peut entraîner des projets difficiles à maintenir, où chaque modification a des conséquences imprévues. C’est pourquoi il existe des bonnes pratiques, souvent introduites par des développeurs expérimentés, pour optimiser l’écriture des règles CSS.
La spécificité en CSS
La spécificité en CSS détermine quelle règle sera appliquée par le navigateur en cas de conflit. Comprendre ce mécanisme est essentiel pour écrire un CSS robuste et éviter les conflits de styles. Chez JoliCode, nous utilisons ITCSS (Inverted Triangle CSS) pour organiser notre code du moins spécifique au plus spécifique, ce qui nous permet de structurer nos fichiers CSS de manière optimale.
Utilisation de composants
Pour chaque projet, nous créons et utilisons des composants CSS basés sur OOCSS (Oriented Object CSS), une méthodologie qui repose sur deux grands principes :
- 1 : Séparation de la structure et de l’apparence : utiliser des classes plutôt que des éléments HTML pour des styles applicables à différents types d’éléments.
- 2 : Séparation du conteneur et du contenu : faire en sorte que le style d’un élément ne dépende pas de son contexte, permettant une réutilisabilité maximale.
Cette approche réduit la spécificité des règles, offre plus de flexibilité et permet de créer une bibliothèque de composants réutilisables, rendant le CSS modulable et maintenable.
Nomenclature
L’écriture des classes ou ID en CSS n’est pas anodine. La méthodologie BEM (Block Element Modifier) permet d’optimiser l’organisation des feuilles de style en séparant nos entités en blocs, éléments et leurs variantes, facilitant ainsi l’application des principes d’OOCSS.
L’écosystème CSS
En plus des bonnes pratiques, divers outils nous aident à organiser et gérer notre CSS plus efficacement :
Les frameworks
Les frameworks CSS, comme Bootstrap ou Bulma, proposent des styles et composants prêts à l’emploi. Chez JoliCode, nous privilégions Tailwind CSS pour son approche “utility-first” avec des classes atomiques représentant une seule propriété CSS. Cette méthode simplifie et accélère l’intégration des pages web. Nous intégrons Tailwind à un système par composant.
Les préprocesseurs
Les préprocesseurs CSS ajoutent des fonctionnalités comme des variables ou des fonctions. Nos projets reposent souvent sur SASS, mais avec l’évolution de CSS, nous tendons à utiliser PostCSS. Cet outil permet d’utiliser des fonctionnalités de préprocesseur et d’autres outils comme autoprefixer pour améliorer la compatibilité des navigateurs.
Les linters
Un linter, comme stylelint, assure que notre code CSS ne contient pas d’erreurs de syntaxe, respecte une nomenclature précise et maintient une cohérence. Chez JoliCode, nous utilisons stylelint pour garantir une qualité et une uniformité de notre CSS.
Comment JoliCode emploie CSS
Chez JoliCode, nous utilisons CSS pour créer des sites web à l’apparence soignée et cohérente. Nos intégrateurs et développeurs suivent les meilleures pratiques et utilisent les outils les plus pertinents pour garantir un code maintenable et performant. Nous privilégions une approche basée sur les composants avec OOCSS, ITCSS et BEM, et utilisons Tailwind CSS pour accélérer et optimiser notre processus de développement.
Nos dernières conférences
Nos experts en intégration HTML/CSS partagent régulièrement leurs connaissances et expériences à travers des conférences et des articles. Jonathan Levaillant a récemment présenté « J’ai testé Tailwind CSS » lors de la conférence Codeurs en Seine, où il a exploré les principes des frameworks CSS sémantiques et Utility-First, et partagé ses retours d’expérience sur ces deux approches.
Contactez-nous
Si vous souhaitez bénéficier de notre expertise en CSS pour vos projets, n’hésitez pas à nous contacter. Ensemble, donnons vie à vos idées (et surtout avec une mise en forme élégante et efficace 🙌).
Nos derniers articles sur CSS
Nous publions régulièrement notre état de l’art ou nos recommandations concernant les outils que nous mettons en œuvre.
Passer à PostCSS pour un projet sans SASS
Cela fait plusieurs années que nous avons l’habitude d’utiliser le préprocesseur SASS ( Syntactically Awesome Style Sheets) chez JoliCode. Incontournable chez les intégrateur·rice·s, il permet d’utiliser des variables, faire des boucles, créer des mixins… Mais avec les avancées du…
Lire la suite de l’article Passer à PostCSS pour un projet sans SASS
Adaptez votre site aux différentes langues avec les propriétés CSS logiques
Aujourd’hui supportées par la majorité des navigateurs, les logical properties ou propriétés logiques permettent d’adapter la mise en page d’un site selon la langue de l’utilisateur. Je vous propose un petit tour d’horizon de ces propriétés CSS encore un peu méconnues. Les logical…
Nos projets clients
Nous avons entrepris une refonte complète du site, initialement développé sur Drupal, dans le but de le consolider et de jeter les bases d’un avenir solide en adoptant Symfony. La plateforme est hautement…
Refonte complète de la plateforme d’annonces immobilières de Cushman & Wakefield France. Connecté aux outils historiques, cette nouvelle vitrine permet une bien meilleure visibilité SEO et permet…
L’équipe d’Alain Afflelou a choisi JoliCode comme référent technique pour le développement de son nouveau site internet. Ce site web-to-store incarne l’image premium de l’enseigne, met en valeur les collections…
Nos formations liées à CSS
Formation CSS avancé
Mettre en forme des pages web en offrant des possibilités de personnalisation poussées