J'ai des lignes de données que je veux présenter dans des colonnes de taille fixe. Par exemple:Présenter des données tabulaires avec CSS, où les cellules trop larges ne gâchent rien
Name City Number
Adam Anaheim 714 555 5555
Bob Barstow 760 555 5555
... ... ...
Toutefois, une des données de la colonne est parfois trop volumineuse pour s'adapter. Si cela se produit, je veux que cela affecte le moins de cellules voisines possible, et non la ligne entière si ce n'est pas le cas.
Voici ce que je FAIS besoin:
Name City Number
Adam Anaheim 714 555 5555
Bob Barstow 760 555 5555
Constantine Canyon 805 555 5555 # Notice how phone number is still aligned :)
Voici ce que je NE PAS veulent:
Name City Number
Adam Anaheim 714 555 5555
Bob Barstow 760 555 5555
Constantine Canyon 805 555 5555 # Notice how phone number is also shifted :(
Comment puis-je faire avec HTML/CSS (pas javascript s'il vous plaît) ?
Voici une jsbin avec une solution non-fonctionnelle, où vous pouvez jouer et voir par vous-même.
MISE À JOUR Voici un résumé de la réponse acceptée, lorsque vous avez des colonnes N:
Les premières colonnes N-1 doivent être enveloppé dans un style DIV = "display: inline-block" dont min- width est la largeur combinée des premières colonnes N-1. Puis à l'intérieur de ce DIV, les premières N-2 colonnes doivent être enveloppées dans un div similaire dont la largeur minimale est la largeur combinée des premières colonnes N-2. Continuez ce tout le long ...
Il est pas joli, mais cela fonctionne et est facile à gérer pour les petites N.
Pouvez-vous poster votre balisage HTML en cours? –
J'ai essayé d'utiliser des DIVs à gauche avec une largeur minimale, mais cela n'a pas fonctionné. J'ai brièvement essayé une table de vanille, mais cela fait que toutes les colonnes se développent pour s'adapter aux plus grandes données. –
Si vous souhaitez aligner des données, les colonnes par définition ne doivent-elles pas croître pour s'adapter aux données les plus volumineuses? – deceze