210 votes

Comment empêcher le saut de ligne dans une colonne d'une cellule de tableau (et non dans une seule cellule) ?

Comment empêcher les sauts de ligne automatiques dans une colonne de tableau (et non dans une seule cellule) ?

4 votes

Veuillez sélectionner une réponse ! ... trop tard maintenant je suppose

1 votes

@Steven Pouvez-vous nous dire pourquoi cette réponse ne répond pas à votre question ?

292voto

David M Points 45808

Vous pouvez utiliser le style CSS espace blanc :

white-space: nowrap;

4 votes

Je veux empêcher le saut de ligne dans une colonne d'un tableau, et non dans une seule cellule.

14 votes

Donc l'ajouter à chaque cellule de la colonne ?

0 votes

Ajoutez une classe à chaque cellule td à laquelle vous voulez que cela s'applique, si vous ne voulez pas que cela s'applique à toutes les cellules du tableau, mais seulement à certaines.

43voto

estani Points 1167

Pour l'achèvement :

#table_id td:nth-child(2)  {white-space: nowrap;}

Est utilisé pour appliquer un style à la colonne 2 de la page the table_id table.

Cette fonction est prise en charge par tous les principaux navigateurs. IE a commencé à la prendre en charge à partir de IE9.

20voto

Derek Illchuk Points 3403

Utilisez le style nowrap :

<td style="white-space:nowrap;">...</td>

C'est CSS !

1 votes

Je veux empêcher le saut de ligne dans toutes les cellules d'une même colonne.

18voto

Xanthir Points 7035

Il existe plusieurs façons de procéder, mais aucune n'est facile ou évidente.

Appliquer white-space:nowrap à un fichier <col> ne fonctionnera pas ; seules quatre propriétés CSS fonctionnent sur <col> la couleur d'arrière-plan, la largeur, la bordure et la visibilité. IE7 et les versions antérieures prenaient en charge toutes les propriétés, mais c'est parce qu'ils utilisaient un modèle de tableau étrange. IE8 s'aligne désormais sur tous les autres.

Alors, comment résoudre ce problème ?

Eh bien, si vous pouvez ignorer IE (y compris IE8), vous pouvez utiliser la fonction :nth-child() pseudoclasse pour sélectionner des <td> de chaque rangée. Vous utiliseriez td:nth-child(2) { white-space:nowrap; } . (Cela fonctionne pour cet exemple, mais cela ne fonctionnerait pas si vous aviez des rowspans ou des colspans).

Si vous devez prendre en charge IE, alors vous devez prendre le chemin le plus long et appliquer une classe à chaque <td> que vous voulez affecter. Ça craint, mais c'est la vie.

À long terme, il existe des propositions visant à corriger ce manque dans les CSS, de sorte que vous puissiez plus facilement appliquer des styles à toutes les cellules d'une colonne. Vous serez en mesure de faire quelque chose comme td:nth-col(2) { white-space:nowrap; } et ça ferait ce que vous voulez.

17voto

Dan Breen Points 4381
<td style="white-space: nowrap">

Le site nowrap Je crois que cet attribut est déprécié. La méthode ci-dessus est la méthode préférée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X