Alors sur la forme : c'est lent. Sur un P4 3GHz ça me prends 100% d'un core pour afficher cette animation et c'est loin d'être fluide. Et la syntaxe est proprement illisible. De l'animation en CSS...
Sur le fond : non, non et non il ne faut pas utiliser les extensions CSS propriétaires d'un navigateur. Prenons un exemple : vous voulez des bords arrondis sur un élément mais sauf un coin, voilà le bordel :
border-radius: 5px; /* Opera, et les autres quand ils se réveilleront */
border-top-left-radius: 0px;
-moz-border-radius: 5px; /* FF */
-moz-border-radius-topleft: 0px;
-webkit-border-radius: 5px; /* Webkit */
-webkit-border-top-left-radius: 0px;
-khtml-border-radius: 5px; /* Konqueror */
-khtml-border-top-left-radius: 0px;
-filter: ...; /* IE7 */
-ms-filter: ...; /* IE8 */
Ah c'est beau, c'est facile à maintenir ça (vous aurez remarqué que tous n'ont pas la même syntaxe en plus). Maintenant que la spéc CSS3 "backgrounds and borders" est en Candidate Recommendation les brouteurs devraient commencer à implémenter border-radius tout court (comme Opera dans ses dernières builds), donc on peux se dire que c'est bon, le support de -moz -webkit -khtml etc. va disparaître pour faire place à border-radius. Sauf que FF et Webkit n'ont pas prévu de supprimer le support de leurs extensions proprio pour ne pas casser l'existant. Du coup que va-t-il se passer ? Personne ne rajoutera border-radius et tout le monde restera avec -webkit et -moz, par flemme en se disant que de ttes façons ça change rien. Et personne ne supprimera les -moz et -webkit de ses CSS en se disant qu'il faut que ça marche encore sur les anciennes versions. Ah ça va être rigolo le CSS3 moi je vous le dit...
Il ne faut pas faire la promo de ces extensions CSS à la con qui sont une véritable perte de temps. Il faut utiliser directement les propriétés du standard quand il est stabilisé (ce qui est le cas ici) et implémenté dans au moins un brouteur (pour tester), ensuite ça marchera dans les autres quand il se seront mis à jour. Utiliser toutes ces extensions maintenant c'est se créer des problèmes d'évolution à terme.
Sur l'animation en CSS : je trouve la syntaxe totalement illisible et un non sens total. Il aurait fallut utiliser SMIL, mais Webkit a préféré commencer par créer les animations CSS plutôt que d'implémenter SMIL (qui est désormais fonctionnel dans webkit, mais pas vraiment utilisable : ma petite anim sur http://prices.dofollow.be/ prends 70% de proc).
« Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)
[^] # Re: Comme IE en son temps
Posté par BohwaZ (site web personnel, Mastodon) . En réponse au journal Un web animé sans flash. Évalué à 6.
Sur le fond : non, non et non il ne faut pas utiliser les extensions CSS propriétaires d'un navigateur. Prenons un exemple : vous voulez des bords arrondis sur un élément mais sauf un coin, voilà le bordel :
border-radius: 5px; /* Opera, et les autres quand ils se réveilleront */
border-top-left-radius: 0px;
-moz-border-radius: 5px; /* FF */
-moz-border-radius-topleft: 0px;
-webkit-border-radius: 5px; /* Webkit */
-webkit-border-top-left-radius: 0px;
-khtml-border-radius: 5px; /* Konqueror */
-khtml-border-top-left-radius: 0px;
-filter: ...; /* IE7 */
-ms-filter: ...; /* IE8 */
Ah c'est beau, c'est facile à maintenir ça (vous aurez remarqué que tous n'ont pas la même syntaxe en plus). Maintenant que la spéc CSS3 "backgrounds and borders" est en Candidate Recommendation les brouteurs devraient commencer à implémenter border-radius tout court (comme Opera dans ses dernières builds), donc on peux se dire que c'est bon, le support de -moz -webkit -khtml etc. va disparaître pour faire place à border-radius. Sauf que FF et Webkit n'ont pas prévu de supprimer le support de leurs extensions proprio pour ne pas casser l'existant. Du coup que va-t-il se passer ? Personne ne rajoutera border-radius et tout le monde restera avec -webkit et -moz, par flemme en se disant que de ttes façons ça change rien. Et personne ne supprimera les -moz et -webkit de ses CSS en se disant qu'il faut que ça marche encore sur les anciennes versions. Ah ça va être rigolo le CSS3 moi je vous le dit...
Il ne faut pas faire la promo de ces extensions CSS à la con qui sont une véritable perte de temps. Il faut utiliser directement les propriétés du standard quand il est stabilisé (ce qui est le cas ici) et implémenté dans au moins un brouteur (pour tester), ensuite ça marchera dans les autres quand il se seront mis à jour. Utiliser toutes ces extensions maintenant c'est se créer des problèmes d'évolution à terme.
Sur l'animation en CSS : je trouve la syntaxe totalement illisible et un non sens total. Il aurait fallut utiliser SMIL, mais Webkit a préféré commencer par créer les animations CSS plutôt que d'implémenter SMIL (qui est désormais fonctionnel dans webkit, mais pas vraiment utilisable : ma petite anim sur http://prices.dofollow.be/ prends 70% de proc).
« Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)