Hier, j'ai décidé de me mettre à Sass et Compass...
Depuis que j'en entend parler, cet outil formidable : gain de temps et productivité, css maintenables, etc. D'ailleurs j'avais lu un livre en rapport il y a un moment déjà.
Les exemples de code pour Sass fleurissent de partout, autant rattraper le train en marche avant qu'il ne soit trop tard... Et puis je peux démarrer à partir de mon css "old school". Alors pourquoi pas ? En réalité, c'est la maintenabilité de mon code pour IE8 qui m'a fait franchir le pas : j'en ai marre de reprendre tout mon code pour IE8, les unités rem en particulier...
Pas de souci pour l'installation. Création de deux fichiers dédiés sass et css... dans le premier j'installe et je transforme mes fichier .css en .scss, la compression s'effectue à la volée comme prévue. Cool ! Auparavant, avec Sublim text 2 il me fallait appuyer sur une touche. Je vais devenir un gros flemmard... Il ne me manquera plus que de configurer Ruby pour que mon navigateur prenne en compte les modifs en temps réel et tout sera très top. Mais... ???
Ha ! Déjà mon premier bug : à la compression, est interprété une fois sur deux l'opacité des rgba par... 0. Génial. Jamais rencontré un problème aussi idiot avec Sublim Text 2.
Il est vrais que je codais en "minifi" même dans la feuille de style principale, sans le zéro avant le point, ce qui n'a jamais posé de problème aux navigateurs. Allons-y pour une heure de copier/remplacer dans mes feuilles de style...
Argh ! Le compilateur ne comprend pas mieux la syntaxe normale. M....de ! Avant de me lancer dans les modifs j'aurais pu tester ! Déjà qu'il m'avait fallut presque une heure pour trouver le bug... Deux heures de perdues pour rien...
Bon, il faudra faire attention au résultat final à la compression des fichiers... Qu'en est-il du côté de l'assistance du codage en css3 ? J'ai été échaudé, maintenant je vais tout tester : Allons-y pour la propriété border-radius dont, perso, je n'utilise plus le préfixage dans mes feuilles de style. Alourdissement inutile s'y j'en crois caniuse. Mais bon, c'est juste pour un test "simple" :
Et maintenant je vais voir le résultat et... quoi !!! ??? :
Tout les préfixes ! Alors que -ms-, -o- n'ont jamais eu lieu d'être ! Pour pondre une telle bêtise je n'avais pas besoin d'un préprocesseur !
Edit de 16h47 : Pour l'exemple ci dessus, ils ont du pondre une mixin généraliste du genre (trouvée sur CSSTricks) :
Ok : je me passerais donc du support de css3 par compass...
Je comprend mieux maintenant la prolifération des codes non optimisés que je trouve sur Codepen ou sur CSS-Tricks. Sans parler des sursélections bien sûr. À ce rythme là il ne va pas rester de gros avantages à utiliser un préprocesseur...
- Les variables pour les couleurs par exemples ? Ouais bon : en copier/remplacer ça me prenais 10 secondes, donc bof...
- Vu qu'il faut contrôler le code de sortie, on oublie l'argument "gain de temps et productivité"...
Heureusement, il me reste les @mixin, @extend et @import à tester, et ces propriétés ont l'air intéressantes. Allons-y pour de nouvelles aventures...
Edit de 16h47 : je pense avoir trouvé la raison de la corruption aléatoire des fichiers css finaux : l'utilisation du compilateur Scout. Du coup, exit Scout, passage en ligne de commande :
Et hop! Miracle ! Plus de bugs !
Modifié par Olivier C (20 Jan 2014 - 23:41)
Depuis que j'en entend parler, cet outil formidable : gain de temps et productivité, css maintenables, etc. D'ailleurs j'avais lu un livre en rapport il y a un moment déjà.
Les exemples de code pour Sass fleurissent de partout, autant rattraper le train en marche avant qu'il ne soit trop tard... Et puis je peux démarrer à partir de mon css "old school". Alors pourquoi pas ? En réalité, c'est la maintenabilité de mon code pour IE8 qui m'a fait franchir le pas : j'en ai marre de reprendre tout mon code pour IE8, les unités rem en particulier...
Pas de souci pour l'installation. Création de deux fichiers dédiés sass et css... dans le premier j'installe et je transforme mes fichier .css en .scss, la compression s'effectue à la volée comme prévue. Cool ! Auparavant, avec Sublim text 2 il me fallait appuyer sur une touche. Je vais devenir un gros flemmard... Il ne me manquera plus que de configurer Ruby pour que mon navigateur prenne en compte les modifs en temps réel et tout sera très top. Mais... ???
Ha ! Déjà mon premier bug : à la compression, est interprété une fois sur deux l'opacité des rgba par... 0. Génial. Jamais rencontré un problème aussi idiot avec Sublim Text 2.
Il est vrais que je codais en "minifi" même dans la feuille de style principale, sans le zéro avant le point, ce qui n'a jamais posé de problème aux navigateurs. Allons-y pour une heure de copier/remplacer dans mes feuilles de style...
Argh ! Le compilateur ne comprend pas mieux la syntaxe normale. M....de ! Avant de me lancer dans les modifs j'aurais pu tester ! Déjà qu'il m'avait fallut presque une heure pour trouver le bug... Deux heures de perdues pour rien...
Bon, il faudra faire attention au résultat final à la compression des fichiers... Qu'en est-il du côté de l'assistance du codage en css3 ? J'ai été échaudé, maintenant je vais tout tester : Allons-y pour la propriété border-radius dont, perso, je n'utilise plus le préfixage dans mes feuilles de style. Alourdissement inutile s'y j'en crois caniuse. Mais bon, c'est juste pour un test "simple" :
@import "compass/css3";
.btn {
@include border-radius(10px);
}
Et maintenant je vais voir le résultat et... quoi !!! ??? :
.btn{-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px;border-radius:10px}
Tout les préfixes ! Alors que -ms-, -o- n'ont jamais eu lieu d'être ! Pour pondre une telle bêtise je n'avais pas besoin d'un préprocesseur !
Edit de 16h47 : Pour l'exemple ci dessus, ils ont du pondre une mixin généraliste du genre (trouvée sur CSSTricks) :
@mixin vendorize($property, $value) {
-webkit-#{$property}: $value;
-moz-#{$property}: $value;
-ms-#{$property}: $value;
-o-#{$property}: $value;
#{$property}: $value;
}
Ok : je me passerais donc du support de css3 par compass...
Je comprend mieux maintenant la prolifération des codes non optimisés que je trouve sur Codepen ou sur CSS-Tricks. Sans parler des sursélections bien sûr. À ce rythme là il ne va pas rester de gros avantages à utiliser un préprocesseur...
- Les variables pour les couleurs par exemples ? Ouais bon : en copier/remplacer ça me prenais 10 secondes, donc bof...
- Vu qu'il faut contrôler le code de sortie, on oublie l'argument "gain de temps et productivité"...
Heureusement, il me reste les @mixin, @extend et @import à tester, et ces propriétés ont l'air intéressantes. Allons-y pour de nouvelles aventures...
Edit de 16h47 : je pense avoir trouvé la raison de la corruption aléatoire des fichiers css finaux : l'utilisation du compilateur Scout. Du coup, exit Scout, passage en ligne de commande :
$ sass --watch sass:css
Et hop! Miracle ! Plus de bugs !
Modifié par Olivier C (20 Jan 2014 - 23:41)