Pages :
(reprise du message précédent)

Florent V. a écrit :

Cet exemple utilise DÉJÀ les CSS. Qu'y a-t-il à prouver? Smiley cligne

Un excès de zèle peut-être Smiley cligne

Florent V. a écrit :

Appliquer un border-right: solid 18px white; aux td de gauche

Punaise j'avais même pas pensé à ça...

Florent V. a écrit :

On peut aussi creuser du côté d'un border-spacing: 18px 0; (mais test rapide pas concluant sous IE6... à creuser).

Effectivement IE6 n'aime pas trop le border-spacing. J'avais déjà rencontré pas mal de problèmes avec cette propriété.

Florent V. a écrit :

La question n'est pas: «peut-on faire ceci sans tableau de mise en forme?», mais «peut-on faire ceci plus simplement ou plus efficacement?»

Sans non plus rentrer toujours dans les solutions de facilité qui sont bien souvent des choix pas vraiment propres.

Dans ce cas, effectivement, le tableau de présentation étant autorisé pourquoi s'en passer ?
C'est d'ailleurs la solution qui a été optée dès le début.
Modifié par Sebastien D. (28 Nov 2007 - 16:36)
LeMagu(s) a écrit :
le seul avantage des tables dans ce cas précis c'était leur faculté d'adapter la taille de leurs cellules aux cellules adjacentes.

Là dessus je suis d'accord.

LeMagu(s) a écrit :

Je me suis demandé alors dans quelle mesure la solution n'était pas de reproduire ce comportement en javascript, histoire de garder le meilleur des 2 mondes.

Ça me gène quand même d'avoir 43KB de scripts pour adapter la taille d'un ou deux éléments...
Sebastien D. a écrit :

Ça me gène quand même d'avoir 43KB de scripts pour adapter la taille d'un ou deux éléments...


Oui là la suis complètement d'accord, mais ici on parle d'un cas d'école.
Dans le cas d'un projet complet de site web on la la plupart du temps déjà du javascript et des librairies incluses, et ces 24 lignes de javascript ne vont pas entrainer un surpoids.

En plus dans cet exemple j'ai été pêcher la lib complète de mootools avec tous les plugins, mais on peut très bien faire le même travail avec une js de 2ko Smiley smile
Salut,

A mon avis, le problème n'est pas tant le poids du script que le mélange JavaScript / CSS qui risque de vite devenir un cauchemar en production, à cause des effets de bord et de la maintenance.
Tout à fait

Comme toujours, le choix d'une technique par rapport à une autre doit être appréciée. Il faut peser le pour et le contre et savoir ce qu'on veut dans les contraintes qui nous sont imposées.
L'utilisation de javascript n'est certainement pas la meilleure solution, mais elle est une solution parmi d'autres qui peut être envisagée si on veut garder un code organisé sans table tout en simulant le comportement qui nous interesse.

Maintenant, pour utiliser quotidiennement du code js/css dans le cadre de mon travail, je peux constater que les problèmes de maintenance sont moins les conséquences d'un code hybride que de la structure de son code et/ou de la connaissance que l'on a de son équipe Smiley cligne

Mais c'est un autre débat ...
Modifié par LeMagu(s) (28 Nov 2007 - 17:31)
Salut,

Je ne vois pas en quoi les données présentées sont tabulaires Smiley decu Pour moi il n'y a là qu'une liste de catégories, qui devraient se trouver dans une liste ...

J'arrive assez facilement à ce résultat avec des flottants et des classes "left" & "right" ...

Les bordures pourraient être adaptées en utilisant un "border-top" au lieu du "border-bottom", et en distinguant les premiers & derniers éléments de la liste (toujours avec des classes).

Bref, c'est faisable avec une liste & en CSS (ai pas suivi l'histoire du script JS). Après, on a l'éternel problème du support des CSS par les navigateurs, mais je ne pense pas avoir utilisé de propriétés trop ennuyeuses à ce niveau-là ...
Thomas D. a écrit :
Je ne vois pas en quoi les données présentées sont tabulaires Smiley decu
Ah oui tiens Smiley rolleyes ... Du coup je ne suis plus très sûr de la définition Smiley murf ... Est-ce qu'une liste ne correspond pas à un tableau d'une seule colonne Smiley biggol ?
Heyoan a écrit :
Ah oui tiens Smiley rolleyes ... Du coup je ne suis plus très sûr de la définition Smiley murf ... Est-ce qu'une liste ne correspond pas à un tableau d'une seule colonne Smiley biggol ?

Un tableau est censé être lu dans les 2 sens, verticalement & horizontalement.

Un tableau à une colonne, ce n'est pas un tableau, c'est une liste Smiley lol
Effectivement les données ne sont pas tabulaires.

Mais l'avantage du tableau était d'avoir des lignes de mêmes hauteurs, ce que tu n'as pas pu reproduire Thomas dans ton exemple (j'ai également fait un rapide essai)
D'où la solution proposée par LeMagu(s) pour le faire en Javascript.
Modifié par Sebastien D. (28 Nov 2007 - 18:20)
Sebastien D. a écrit :
Mais l'avantage du tableau était d'avoir des lignes de mêmes hauteurs, ce que tu n'as pas pu reproduire Thomas dans ton exemple.

Ah bon ? Sous Firefox, ça y ressemble pourtant, non ? (mis à part les bordures)

Edit : j'ai modifié mon essai pour simuler les lignes de même hauteur ...
Modifié par Thomas D. (28 Nov 2007 - 18:25)
Thomas D. a écrit :

Edit : j'ai modifié mon essai pour simuler les lignes de même hauteur ...

C'est bien ce qu'il me semblait...

Mais c'est que sous Firefox... Enfin pas sous IE.
Modifié par Sebastien D. (28 Nov 2007 - 18:43)
Sebastien D. a écrit :
Mais c'est que sous Firefox...
Peut-être, mais c'est possible en CSS Smiley smile

Après, les incompatibilités entre navigateurs, ça sort du contexte du "cas d'école" ...
kedis a écrit :

Mais lorsqu'on est chargé de la découpe d'une maquette approuvée par le client.

On est justement pas dans un cas d'école Smiley cligne

Bref, quand même faut que je regarde ta solution qui est très intéressante !

Je crois qu'avec tout ça kedis à l'embarra du choix.
Modifié par Sebastien D. (28 Nov 2007 - 19:21)
En effet, je pense que dans ce cas c'est une liste de liens et donc pas des données tabulaires, clairement la présentation graphique ne doit pas être la bonne mais comme je le disais, quelques fois on a pas vraiment le choix.

Bon en résumé nous avons donc 3 propositions :
- une table en deux colonnes codé de manière "propre"
- une version liste css mais qui ne marche que sur firefox
- une version liste css et js.

Mon avis est qu'on ne peut se passer de la présentation sur IE qui reste majoritaire, que le javascript nécessite des connaissances et du développement supplémentaire (donc peut-être moins rentable en tout cas lors de la création pas de la maintenance)
Sans doute le compromis lorsque le design "force" une présentation serait d'encore utiliser une table.

votre avis ?
kedis a écrit :

Mon avis est qu'on ne peut se passer de la présentation sur IE qui reste majoritaire, que le javascript nécessite des connaissances et du développement supplémentaire (donc peut-être moins rentable en tout cas lors de la création pas de la maintenance)
Sans doute le compromis lorsque le design "force" une présentation serait d'encore utiliser une table.

votre avis ?

Il semble que tu ais déjà un fort avis sur la question.

Chaque solution présente ses avantages et ses inconvénients (tu viens en partie de les citer). Je crois que tu as désormais toutes les cartes en main pour faire ton choix Smiley cligne
Modifié par Sebastien D. (29 Nov 2007 - 12:36)
A vrai l'affichage ne se fait plus correctement sur tous les navigateurs. J'avais du refaire quelques essais et j'ai tout cassé Smiley cligne

Je corrigerais quand j'aurai le temps.
Pages :