Code Monkey home page Code Monkey logo

Comments (14)

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Un vaste débat également ;)

Voilà mon humble avis perso sur le sujet.

Il existe trois versions de KNACSS :

  • version classique CSS
  • version LESS
  • version Sass

... et ces versions correspondent à deux types de publics :

  • un public non averti, qui a utiliser la version CSS sans trop toucher au code fourni
  • un public averti aux préprocesseurs

J'estime que le public averti aux préprocesseurs l'est également sur d'autres outils courants de workflow, et dispose déjà d'outils qui de toute façon se chargent des préfixes, entre autre.

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

J'estime que le public averti aux préprocesseurs l'est également sur d'autres outils courants de workflow, et dispose déjà d'outils qui de toute façon se chargent des préfixes, entre autre.

C'est une supposition bien hâtive. Au delà de ça, on peut être averti sans pour autant être utilisateur. Autoprefixer n'est pas un standard, et ne convient pas à tous les workflows.

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

C'est aussi surtout parce qu'en terme d'allègement de code, et donc de lisibilité et de maintenabilité, la différence est flagrante.

EDIT : et au final, (autre supposition), je prévois que les préfixes vont disparaître un jour, donc autant s'y préparer dès aujourd'hui en écrivant du code propre et laisser faire le boulot aux outils dont c'est le boulot ;)

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

Le framework est là pour faciliter la tâche aux développeurs qui l'utilisent, pas au développeur qui le maintient.

Je viens de repasser sur l'ensemble du projet, il y a 4 déclarations nécessitant des préfixes : text-size-adjust, filter, flexbox, et appearance. Je pense que côté maintenabilité, c'est jouable.

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Le framework est là pour faciliter la tâche aux développeurs qui l'utilisent, pas au développeur qui le maintient.

Oui, par "maintenabilité", je parlais bien de la maintenabilité du code pour les intégrateurs, leur équipe, leurs stagiaires, etc. : plus le code est court, simple et lisible, plus il est aisé de le maintenir au cours d'un projet.

Je rappelle que - contrairement aux usines à gaz telles que Bootstrap, Foundation et compagnie - KNACSS est volontairement léger et doit être adapté et enrichi par les intégrateurs. On ne le laisse pas tel quel normalement.

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

Ce que je vois, c'est qu'un utilisateur de KNACSS qui a le malheur de ne pas intégrer Autoprefixer dans son workflow va devoir faire ça dans une de ses feuilles de styles :

/* KNACSS fix */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

@media print {
  img {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-grayscale(100%);
  }
}

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.flex-fluid {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.flex-mid {
  -webkit-box-ordinal-group: 1;  
  -moz-box-ordinal-group: 1;     
  -ms-flex-order: 1;     
  -webkit-order: 1;  
  order: 1;
}

.flex-start {
  -webkit-box-ordinal-group: -1;  
  -moz-box-ordinal-group: -1;     
  -ms-flex-order: -1;     
  -webkit-order: -1;  
  order: -1;
}

.flex-mid {
  -webkit-box-ordinal-group: 1;  
  -moz-box-ordinal-group: 1;     
  -ms-flex-order: 1;     
  -webkit-order: 1;  
  order: 1;
}

.flex-end {
  -webkit-box-ordinal-group: 42;  
  -moz-box-ordinal-group: 42;     
  -ms-flex-order: 42;     
  -webkit-order: 42;  
  order: 42;
}

Et là, tu te dis que le mainteneur aurait quand même pu s'occuper de faire ça, parce que c'est aussi le rôle du framework que d'épargner ça au développeur.

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Ce que je vois, c'est qu'un utilisateur de KNACSS [...]

L'utilisateur de KNACSS version préprocesseurs, oui.
Pas l'utilisateur novice qui utilise KNACSS en version CSS.

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

L'utilisateur de KNACSS version préprocesseurs, oui.

Tu pars du principe qu'un mec qui utilise LESS ou Sass va forcément utiliser Autoprefixer. Où as-tu été chercher cette idée ?

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Pas forcément Autoprefixer, mais tous les autres très nombreux outils qu'on a a disposition pour préfixer (ça peut aussi être Grunt, Brunch, Gulp, Prepros, etc.).

from knacss.

PhilippeVay avatar PhilippeVay commented on August 26, 2024

Je suis OK avec la décision de devoir utiliser Autoprefixer si on utilise une version préprocesseur de KNACSS (LESS en tout cas) mais ce qui me dérange malgré tout c'est que je n'ai aucune idée de ce que fait ce plugin et comment le configurer (la responsabilité m'en revient ceci dit ; n'ayant pas creusé ce que faisait Prepros), comment je pourrais ré-obtenir exactement la même chose que la version CSS à partir de la version LESS (edit: s/CSS/LESS) parce que la méthode exacte n'est documentée nulle part. Le fait qu'il faille ajouter les préfixes qui vont bien n'est évoqué que dans le tutoriel, pas ici sur GitHub ni sur la page d'accueil de knacss.com ni sur la page du builder … et sans plus de détail donc
… mais c'est peut-être une autre Issue que celle-ci ?

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

Donc du coup ? Tu as tranché là dessus Raphaël ?

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Le fait qu'il faille ajouter les préfixes qui vont bien n'est évoqué que dans le tutoriel, pas ici sur GitHub ni sur la page d'accueil de knacss.com ni sur la page du builder … et sans plus de détail donc

Corrigé, c'est précisé aussi sur la page Github

Donc du coup ? Tu as tranché là dessus Raphaël ?

Oui tranché. Pas de préfixes sur les versions pré-processées. Uniquement sur les versions CSS classiques

from knacss.

KittyGiraudel avatar KittyGiraudel commented on August 26, 2024

Il reste des préfixes : https://github.com/raphaelgoetter/KNACSS/blob/master/sass/01-base.scss#L55.

from knacss.

raphaelgoetter avatar raphaelgoetter commented on August 26, 2024

Oui, c'est ceux où je ne suis pas sûr que des outils comme Autoprefixer les prenne en charge.

Il me semble que text-size-adjust est propriétaire, non ?

EDIT : oui c'est propriétaire : https://developer.mozilla.org/en-US/docs/Web/CSS/text-size-adjust

from knacss.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.