Pourquoi les "frameworks CSS" modernes encouragent-ils à écrire du code à vomir ?

a marqué ce sujet comme résolu.

class="btn btn-primary" me va personnellement très bien. J’ai plus de mal avec, par exemple, class="text-center sm:text-left mb-20 mt-40 text-50 sm:text-72 font-serif leading-tight", dans un projet pro.

J’ai réfléchi un peu plus à tout ça, et voici des choses en plus que je comprends:

  • Les gens ont abandonné l’idée d’avoir plusieurs designs différents pour le même site. 99% des gens veulent un seul design pour leur site, qu’ils ont choisi. Du coup, avoir tout le site spécifié dans le code les dérange moins. (Je trouve que c’est un raisonnement compréhensible, mais je regrette que ça se fasse en flinguant la sémantique du HTML, avec les problèmes d’accessibilité qui se posent derrière.)

  • Les designers veulent pouvoir modeler le site exactement comme dans leur outil de mockup préféré, et ils préfèrent gérer le placement de chaque bouton à la main si nécessaire, plutôt que d’essayer d’avoir un truc qui marche partout avec une approche qui repose sur une exécution parfaites de placement flex etc. Du coup, chaque morceau du design pourra se faire éditer avec du style="..." pour rentrer dans ce moule.

  • Tant que chaque élément n’est utilisé qu’une fois, ce n’est finalement pas grave d’avoir jeté toute idée de sémantique dans le style, et d’avoir du style="..." directement.

  • Pour les éléments réutilisables plusieurs fois dans la page, on fait du template (de toute façon on a des outils de préprocessing parce que HTML/CSS est trop peu flexible sans ça… donc on peut les utiliser pour automatiser le boilerplate moche), ou alors on paie des gens pour copier-coller plein de fois.

Cette approche peut marcher si on veut un site pas trop compliqué (mais responsive), joli et à la mode, qu’on est prêt à payer assez cher pour chaque changement (parce que beaucoup de boulot chiant d’adapter chaque partie du site à la main), qu’on a peu de parties vraiment dynamiques qui sont usinées en templates réutilisables, et qu’on s’en fout de la sémantique / accessibilité. Je vois pourquoi c’est populaire.

@gasche de mon point de vue, le point 1 n’a pratiquement jamais été un argument, les gens n’ont jamais voulu plusieurs designs pour le même site, sauf pour les rares CSS d’impression, une poignée de geeks (linuxfr.org le permet) ou des démonstrations technologiques (type CSS Zen Garden). En fait, c’est plutôt maintenant qu’on voit cette problématique arriver, avec les modes sombres un peu partout, que permettent tout à fait les frameworks CSS s’ils ne sont pas trop utilisés n’importe comment (et à ce titre on peut espérer que ça va éviter les plus grosses horreurs).

Je ne suis pas certain que les trois autres points soient directement reliés aux frameworks CSS.

Et oui, il y a énormément de projets qui se fichent complètement de la gestion du changement ou de la sémantique, parce qu’ils sont soit très figés (et le moindre changement va être global), soit jetables. Le beau code n’est alors objectivement pas rentable.

PS : d’autre part, mon avis personnel est que d’un point de vue ergonomie, ces frameworks ont plutôt amélioré l’expérience utilisateur générale des sites « amateurs », en particulier sur mobile.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte