Maison  >  Article  >  interface Web  >  Que puis-je faire pour vous sauver, ma table (Haiyu Blog)_HTML/Xhtml_Webpage Production

Que puis-je faire pour vous sauver, ma table (Haiyu Blog)_HTML/Xhtml_Webpage Production

WBOY
WBOYoriginal
2016-05-16 16:37:161074parcourir

La table occupait autrefois une position importante dans le développement Web - la mise en page Même dans le Web2.0, nous pouvons encore voir sa mise en page. Cependant, la technologie s'améliore constamment et la méthode de combinaison Div CSS a finalement frappé à la porte de la mise en page à l'ancienne et a déclenché une nouvelle vague de mise en page. Ce qui a suivi, ce sont de nouvelles et d'anciennes rancunes. De nombreuses personnes, qu'elles aient ou non des opinions sur la table, ont également commencé à critiquer la table - code gonflé, balises non sémantiques, méthodes d'écriture compliquées, etc. N'oubliez pas que les tableaux n'ont pas été créés à l'origine pour la mise en page, mais pour l'affichage des données. Abandonner la disposition de la table ne signifie pas abandonner la table elle-même. Que puis-je faire pour te sauver, ma table ?

Qu'est-ce qu'une table :

Table est aussi une table Html, support de données.

Ce qui suit est une manière relativement standard d'écrire du code de table :


Copiez le code
Le code est la suivante :

;th>Mois



Un tableau HTML simple se compose de l'élément table et d'un ou plusieurs éléments tr, th ou td. L'élément tr définit la ligne du tableau, le ème élément définit la cellule d'en-tête et l'élément td définit la cellule du tableau. L'attribut border spécifie la largeur de la bordure du tableau, cellpadding spécifie l'espace entre le bord de la cellule et son contenu et Cellpacing spécifie l'espace entre les cellules. Nous définissons généralement ces trois attributs sur 0 manuellement pour éviter les différences entre les navigateurs. L'attribut width spécifie la largeur du tableau, car la largeur du tableau change avec la largeur des éléments internes. Dans les situations courantes, nous souhaitons que le tableau ait la même largeur que le conteneur externe, donc la largeur par défaut est souvent définie. à 100% pour remplir le récipient.

Je dois mentionner l'attribut table-layout:fixed

table-layout : auto (par défaut) |

Paramètres :

auto : L'algorithme automatique par défaut. La disposition sera basée sur le contenu de chaque cellule. Le tableau ne sera affiché que lorsque chaque cellule sera lue et calculée, ce qui est très lent.
fixe : algorithme de mise en page fixe. Dans cet algorithme, la disposition horizontale est basée uniquement sur la largeur du tableau, la largeur de la bordure du tableau, l'espacement des cellules et la largeur des colonnes, et n'a rien à voir avec le contenu du tableau. La vitesse d'analyse est rapide.

Étapes de travail du modèle de mise en page fixe :
1. Tous les éléments de colonne dont la valeur d'attribut de largeur n'est pas automatique définiront la largeur de la colonne en fonction de la valeur de largeur.
2. La largeur de cellule de cette colonne dans la première ligne du tableau, définissez la largeur de cette colonne en fonction de la largeur de la cellule. Si la cellule s'étend sur plusieurs colonnes, la largeur est répartie uniformément entre les colonnes.
3. Après les deux étapes ci-dessus, si la largeur de la colonne est toujours automatique, sa taille sera automatiquement déterminée pour rendre sa largeur aussi égale que possible. À ce stade, la largeur du tableau est définie sur la valeur de largeur du tableau ou sur la somme des largeurs de colonnes (la valeur la plus grande étant retenue). Si la largeur du tableau est supérieure à la somme de ses largeurs de colonnes, divisez la différence par le nombre de colonnes et ajoutez la largeur résultante à chaque colonne.
Cette méthode est rapide car toutes les largeurs de colonnes sont définies par la première ligne du tableau. Les cellules de toutes les lignes après la première ligne sont dimensionnées en fonction de la largeur de colonne définie par la première ligne. Les cellules de ces dernières lignes ne modifient pas la largeur de la colonne. Cela signifie que toutes les valeurs de largeur spécifiées pour ces cellules seront ignorées.

Généralement, lors de la création d'un tableau HTML complexe, vous constaterez parfois que peu importe la façon dont vous ajustez la largeur de chaque colonne dans la première ligne, la largeur de la colonne changera toujours de manière inattendue (comme une longue chaîne de texte anglais, et s'il y a il n'y a pas d'espace au milieu, vous souhaitez limiter la largeur de cette colonne, de sorte que le long texte soit obligé de s'enrouler sans casser le tableau, et souvent le résultat est que la largeur appropriée ne peut pas être ajustée, peu importe la façon dont vous l'essayez) . En ce moment, en désespoir de cause, vous pouvez utiliser table-layout:fixed.

Sauts de ligne pour les problèmes de table difficiles

Utiliser des tableaux pour afficher des données présente parfois un casse-tête, c'est-à-dire afficher un certain texte sans sauts de ligne, notamment dans l'en-tête, qui est le plus utilisé. En fait, le problème que vous rencontrez n'est pas le retour à la ligne, mais la compatibilité du navigateur qui le sous-tend rend le retour à la ligne beaucoup plus difficile. Ici, vous pouvez consulter l'article Guide pour forcer les sauts de ligne et ne forcer aucun saut de ligne pour vous inspirer. L'article explique en détail comment résoudre les sauts de ligne dans différentes situations.

De manière générale, la méthode recommandée pour envelopper les lignes dans un tableau est la suivante : définissez d'abord table-layout:fixed pour le tableau. Fondamentalement, après avoir défini cet attribut, le problème de renvoi à la ligne de base peut être résolu sans td dans le tableau. En raison de la quantité de chaque contenu à l'intérieur, une situation de concurrence pour la largeur des autres td et th se produit. Si vous rencontrez toujours le problème des sauts de ligne forcés à ce stade, ajoutez une couche de div à l'intérieur du td, puis utilisez les deux méthodes CSS word-wrap:break-word; word-break:break-all; problème de saut de ligne.

Quelques balises de table courantes mais peu familières

tête, pied et corps

Ces trois balises sont un produit de ce qu'on appelle xhtml, et vous donnent principalement la possibilité de regrouper des lignes dans un tableau. Lorsque vous créez un tableau, vous souhaiterez probablement avoir une ligne d'en-tête, des lignes contenant des données et une ligne de total en bas. Cette division donne au navigateur la possibilité de prendre en charge le défilement du corps du tableau indépendamment des en-têtes et des pieds de page. Lorsque de longs tableaux sont imprimés, l'en-tête et le pied de page du tableau peuvent être imprimés sur chaque page contenant les données du tableau. Personnellement, je pense que son objectif principal est adapté à l’optimisation de l’affichage de très longs tableaux.

La balise

thead représente l'en-tête du tableau HTML
l'en-tête du tableau. Vous pouvez utiliser un style distinct pour définir l'en-tête du tableau, et vous pouvez imprimer l'en-tête du tableau en haut de. la page lors de l'impression.

La balise

thead représente le pied de page HTML
Le pied de page du tableau. Le pied de page (note de bas de page ou note de tableau) peut être défini à l'aide d'un style distinct, et la page peut être imprimée en même temps. partie inférieure de la page lors de l'impression du pied.

La balise tbody représente le corps du tableau HTML
Lorsque le navigateur affiche le tableau, il télécharge généralement le tableau dans son intégralité puis l'affiche dans son intégralité. Par conséquent, lorsque le tableau est très long, vous pouvez. utilisez tbody pour l’afficher en segments.

Remarque : si vous utilisez les éléments thead, tfoot et tbody, vous devez tous les utiliser. L'ordre dans lequel ils apparaissent est : thead, tfoot, tbody, afin que le navigateur puisse restituer l'en-tête et le pied de page avant de recevoir toutes les données. Vous devez utiliser ces balises à l'intérieur de l'élément table, et thead doit contenir la balise tr. Par conséquent, la manière la plus standard d'écrire un tableau est le code suivant :


Copier le code
Le code est la suivante :

Date
18< /td>
;tr>





🎜>

/tbody>
< ;/table>



Personnellement, je pense que ce truc est inutile, inutile et dommage de le jeter. Les petits projets peuvent ajouter une certaine sémantique, mais comme ils ont été confrontés au dilemme d'avoir plusieurs en-têtes différents affichés dans le même tableau, ce qui limite le développement futur, les projets formels utilisent ces balises avec prudence du point de vue de l'évolutivité.


col et colgroup


Ces deux balises sont également des produits du xhtml, avec des fonctions puissantes et une compatibilité extrêmement médiocre.

La balise col définit les valeurs d'attribut pour une ou plusieurs colonnes du tableau.
La balise

colgroup est utilisée pour regrouper les colonnes du tableau pour le formatage. Leur fonction principale est de contrôler la largeur des cellules, ce qui évite d'avoir à définir chaque cellule séparément. Dans le passé, nous définissions souvent la largeur sur th ou td dans la première ligne pour spécifier la largeur de chaque colonne. et col peuvent non seulement définir la largeur mais également définir d'autres attributs en même temps. Par exemple, vous pouvez utiliser col pour contrôler la somme des largeurs de plusieurs colonnes, et vous pouvez également contrôler la couleur d'arrière-plan de cette colonne. Mais l'idéal est complet, et la réalité est la colonne vertébrale. Comme mentionné précédemment, plus la fonction est grande, plus la compatibilité est grande. D'après les tests existants, seules deux applications peuvent jouer un rôle et assurer la compatibilité entre col et colgroup : largeur et arrière-plan. Pour la largeur, je préfère personnellement utiliser la méthode conventionnelle, définir la largeur dans la première ligne et garantir la largeur de la colonne. Quant au fond, dans la pratique, il est rare que des tableaux utilisent des fonds différents sur de grandes surfaces. Par conséquent, je pense personnellement : ne l’utilisez pas autant que possible.

Où utiliser le tableau

Personnellement, je pense que dans un conteneur où les données sont très denses et très sérialisées, table est le bon choix. L'exemple le plus courant est notre page commune de règlement des commandes, qui répertorie les détails de votre commande : nom du produit, prix unitaire, quantité achetée, sous-total du montant, frais d'expédition, etc. Enfin, il y a un résultat du montant final de la commande au en bas, tableau On peut dire que c'est comme un poisson dans l'eau ici, et il a obtenu l'effet magique d'un support de données.

Ce qui précède est un examen des points de connaissance courants des tables, ainsi qu'une analyse et un tri de plusieurs endroits couramment utilisés. J'espère qu'après avoir lu cet article, vous pourrez visualiser et utiliser les tableaux avec la bonne attitude. J'espère que cet article pourra vous sauver un peu, ma table. Merci.

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
Mois Date
Listes de mois Listes de dates