inline-block et -moz-inline-box
inline-block et -moz-inline-box
Bonjour,
FF 1.07 et 1.5 ne supportent pas la valeur "inline-block" de la propriété "display" de CSS (2.1, quand même :p).
En gouglant un peu, j'ai trouvé une "-moz-inline-box", qui semble faire la même chose. Mon CSS pour un objet à mettre en inline-block devient donc:
display: -moz-inline-box; /*Gecko*/
display: inline-block; /*non-Gecko, ou futur Gecko*/
La question est: les deux propriétés sont-elles réellement équivalentes?
Sinon, quelles différences, quels risques à utiliser -moz-inline-box?
Si oui, pourquoi inline-block n'est pas reconnu? (le code étant déjà écrit pour -moz-inline-box).
Voilà voilà, merci.
FF 1.07 et 1.5 ne supportent pas la valeur "inline-block" de la propriété "display" de CSS (2.1, quand même :p).
En gouglant un peu, j'ai trouvé une "-moz-inline-box", qui semble faire la même chose. Mon CSS pour un objet à mettre en inline-block devient donc:
display: -moz-inline-box; /*Gecko*/
display: inline-block; /*non-Gecko, ou futur Gecko*/
La question est: les deux propriétés sont-elles réellement équivalentes?
Sinon, quelles différences, quels risques à utiliser -moz-inline-box?
Si oui, pourquoi inline-block n'est pas reconnu? (le code étant déjà écrit pour -moz-inline-box).
Voilà voilà, merci.
A la question "les deux propriétés sont-elles réellement équivalentes?" je répondrai : je n'en sais rien je n'ai pas fait de recherche sur la question.
Mais à la question "pourquoi inline-block n'est pas reconnu? (le code étant déjà écrit pour -moz-inline-box)" je pense que c'est parce que css2 est une recommandation du W3C tandis que css2.1 n'en est encore qu'au stade de "working draft" donc rien de définitif et que les développeurs Gecko dans l'attente ont produit une préversion d'où le préfixe -moz- devant la propriété.
Mais à la question "pourquoi inline-block n'est pas reconnu? (le code étant déjà écrit pour -moz-inline-box)" je pense que c'est parce que css2 est une recommandation du W3C tandis que css2.1 n'en est encore qu'au stade de "working draft" donc rien de définitif et que les développeurs Gecko dans l'attente ont produit une préversion d'où le préfixe -moz- devant la propriété.
Il y a aussi -moz-inline-block. Visiblement, celui-ci est déjà plus près de inline-block que -moz-inline-box, même si ce n'est pas parfaitement équivalent. (source).
En gros : -moz-inline-box n'a aucune spécification. Il pourrait être ammené à changer à l'avenir, cassant ainsi ta page. Pour -moz-inline-block, c'est à peu près pareil même si c'est moins probable. Tu fais bien de le définir avant inline-block pour éviter de tout faire foirer si un jour inline-block est implémenté et que les développeurs décident de modifier le fonctionnement de la propriété pour un autre usage
Si dans ton cas ça fonctionne, alors n'hésite pas (mais avec -moz-inline-block). Mais si ce n'est pas implémenté comme inline-block, c'est aussi parce qu'il y a certainement des situations ou on pourrait voir une vraie différence
Quant au fait que CSS 2.1 ne soit pour l'heure qu'un document de travail, je ne sais pas qu'en penser, vu que ce n'est en fait qu'une révision de CSS 2.0, donc a priori relativement stable
PS : bien entendu vous pouvez voter pour le bug en question
En gros : -moz-inline-box n'a aucune spécification. Il pourrait être ammené à changer à l'avenir, cassant ainsi ta page. Pour -moz-inline-block, c'est à peu près pareil même si c'est moins probable. Tu fais bien de le définir avant inline-block pour éviter de tout faire foirer si un jour inline-block est implémenté et que les développeurs décident de modifier le fonctionnement de la propriété pour un autre usage
Si dans ton cas ça fonctionne, alors n'hésite pas (mais avec -moz-inline-block). Mais si ce n'est pas implémenté comme inline-block, c'est aussi parce qu'il y a certainement des situations ou on pourrait voir une vraie différence
Quant au fait que CSS 2.1 ne soit pour l'heure qu'un document de travail, je ne sais pas qu'en penser, vu que ce n'est en fait qu'une révision de CSS 2.0, donc a priori relativement stable
PS : bien entendu vous pouvez voter pour le bug en question
Ah le inline-block, qu'est-ce que ça manque en effet. Je dois souvent simuler ce comportement à l'aide de float, mais manipuler les floats c'est souvent de la magie noire, et ça a toutes les chances de sauter sous IE. Et paradoxalement sous IE ça fonctionne assez bien le inline-block.
-moz-inline-block c'est un début d'implémentation mais il reste des bugs. Par exemple ce qui m'avait empêché de l'utiliser c'était entre autres sa non réceptivité du click souris en javascript.
C'est curieux, mais en html il existe un élément qui est en inline-block de façon naturelle, c'est « img ». Je pense qu'il y aurait moyen de s'inspirer du code qui gère les img pour le rendre plus générique afin de finaliser l'implémentation du inline-block sous Gecko. Faudrait que je mette mon nez là-dedans quand j'aurai une plus grosse machine pour compiler ce mastodonte
Je vais voter pour le bug en tout cas ^^
-moz-inline-block c'est un début d'implémentation mais il reste des bugs. Par exemple ce qui m'avait empêché de l'utiliser c'était entre autres sa non réceptivité du click souris en javascript.
C'est curieux, mais en html il existe un élément qui est en inline-block de façon naturelle, c'est « img ». Je pense qu'il y aurait moyen de s'inspirer du code qui gère les img pour le rendre plus générique afin de finaliser l'implémentation du inline-block sous Gecko. Faudrait que je mette mon nez là-dedans quand j'aurai une plus grosse machine pour compiler ce mastodonte
Je vais voter pour le bug en tout cas ^^
Bonjour,
j'ai quelques problèmes avec -moz-inline-block: les objets sont considérés comme des blocs (du moins on dirait), et pas comme des inline-block... :/
Par contre avec -moz-inline-box, ça a l'air de marcher comme inline-block.
Avec le petit bout de css que j'avais mis, l'affichage est le même avec Opera 9 bêta, FF 1.5 / FF 1.07 et Konqueror 3.4.3.
Opera 8.51 et IE 5.x / IE 6 ont quelques petits bugs d'alignement vertical, on dirait.
Mais donc pour autant que j'aie pu tester, -moz-inline-box est équivalent à inline-block, et -moz-inline-block serait plus proche de block...
Donc votez pour le bug sur bugzilla
j'ai quelques problèmes avec -moz-inline-block: les objets sont considérés comme des blocs (du moins on dirait), et pas comme des inline-block... :/
Par contre avec -moz-inline-box, ça a l'air de marcher comme inline-block.
Avec le petit bout de css que j'avais mis, l'affichage est le même avec Opera 9 bêta, FF 1.5 / FF 1.07 et Konqueror 3.4.3.
Opera 8.51 et IE 5.x / IE 6 ont quelques petits bugs d'alignement vertical, on dirait.
Mais donc pour autant que j'aie pu tester, -moz-inline-box est équivalent à inline-block, et -moz-inline-block serait plus proche de block...
Donc votez pour le bug sur bugzilla
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités