Maison  >  Article  >  interface Web  >  TD de production de pages Web peut également déborder et masquer la production de pages display_HTML/Xhtml_Web

TD de production de pages Web peut également déborder et masquer la production de pages display_HTML/Xhtml_Web

WBOY
WBOYoriginal
2016-05-16 16:42:151955parcourir

Peut-être que dès que je donnerai un tel nom à cet article, quelqu'un demandera : Pourquoi faites-vous toujours attention à table ? Elle est déjà obsolète... Dépêchez-vous Xhtml... div c'est bien... ul c'est bien. .. ol c'est bien... dl c'est bien... c'est fini, non Il vaut mieux savoir quoi d'autre.

La table est-elle vraiment dépassée ? Comprenez-vous vraiment le tableau ? Savez-vous vraiment utiliser les tableaux ?

La guerre des mots n'est pas ce que nous voulons faire, laissons le soin à ceux qui ont tout le temps.

Retour au sujet :

Je ne me souviens pas quand quelqu'un utilisait un tableau pour simuler le DataGrid et demandait pourquoi le texte du td qui dépasse la largeur fixe ne pouvait pas être masqué, mais va envelopper directement?

Oui, c'est bien le cas, comme :



Astuce : Vous pouvez modifier une partie du code avant d'exécuter
Exécutez le code ci-dessus et vous constaterez que le texte dans la cellule qui dépasse la largeur fixe ne sera pas masqué, mais sera affiché dans une nouvelle ligne. Évidemment, ce n'est pas mon intention.

Il semble que ce soit une caractéristique du tableau. Il ne peut pas bien supporter la combinaison de {width:*px;white-space:nowrap;overflow:hidden;}. En dernière analyse, il est blanc. -space: nowrap ne fonctionne pas, il semble donc que overflow:hidden ne soit pas valide. {Remarque : S'il s'agit d'une série de caractères dénués de sens, cela peut prendre effet, par exemple : & lt; td } Pour le forcer à être dans une ligne d'affichage, car cette série de a sera reconnue comme un seul mot sans saut de ligne, donc les a qui dépassent la largeur de .col1 seront masqués}

 [Solution 1:]

Plus tard, quelqu'un Il est mentionné qu'utiliser un pourcentage de largeur est suffisant. Après test, c'est effectivement possible. Modifiez légèrement le style de quelques lignes du premier paragraphe et laissez les autres inchangées :

.col1 {width:20%;}
.col2 {width:40%;}
.col3 {width:40%;}

Après avoir exécuté le code modifié, vous constaterez que le texte qui dépasse la largeur est bien masqué. L'effet semble être obtenu.

En fait, utiliser une largeur en pourcentage peut effectivement résoudre le problème du masquage du texte, mais cela ne semble pas être la meilleure solution, car parfois nous avons besoin d'une largeur fixe, pas d'une largeur en pourcentage.

La racine de tout cela est de savoir comment afficher le texte de la cellule sur une seule ligne sans retour à la ligne.

 [Solution 2 :]

Pour répondre à cette exigence, en plus d'utiliser des styles, on peut aussi penser à une balise la fonction de cet élément est de forcer le contenu à s'afficher sur une seule ligne. Apportez les modifications suivantes au code ci-dessus, en laissant tout le reste inchangé :







Shenzhou élégant Q400N < ;nobr> ; Élégant Q400N, utilisant le processeur Intel Core2 Duo (Merom) T5450 (1,66G) Plateforme Centrino 4, exceptionnel Excellent rapport qualité/prix, belle apparence
effectivement atteint, est-il temps d'être excité ? Non, cela ne semble pas être la meilleure solution, car après tout, c'est un peu désagréable d'utiliser une balise d'élément qui n'a pas été utilisée depuis longtemps et qui n'est pas recommandée.

Suite à cette idée, j'ai considéré ce problème sous un angle différent et j'ai constaté que le problème était facilement résolu.

Puisque nous ne pouvons pas simplement ajouter white-space:nowrap à th et td dans une cellule à largeur fixe, que se passe-t-il si nous ajoutons un élément mark à la cellule à largeur fixe ?

Meilleure solution :



提示:您可以先修改部分代码再运行

  运行上面的代码,会发现这样的做法是可以的,而且从代码的简洁性、可读性和合理性几方面来说,都较前几种方案为好。

  {还没有做过给单元格隐藏超过固定宽度内容的同学,可先在机器上玩玩,然后再来看本文}

  其实table是一个有趣,可玩性很高东东。我们不应该带着有色眼睛去看它,因为它有它存在的道理。

  之后会继续写一些关于table的文章,也作自娱之用。
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn