Il semble que align
ne fonctionne pas pour l’élément th . Voici mon HTML:
<div style="width: 100%; height: 175px; overflow: auto;">
<table class="grid" id="table">
<thead>
<tr>
<th class="not_mapped_style" style="display: none;" align="center">id</th>
<th class="not_mapped_style" align="center">DisplayName</th>
<th align="center">PrimaryEmail</th>
<th align="center">Age</th>
<th align="center">Phone</th>
</tr>
</thead>
<caption>Contacts</caption>
<tbody>
<tr>
<td style="display: none;" property_value="0" property_name="id" align="center">0</td>
<td property_value="rpcuser" property_name="DisplayName" align="center">rpcuser</td>
<td property_value="[email protected]" property_name="PrimaryEmail" align="center">[email protected]</td>
<td property_value="69" property_name="Age" align="center">69</td>
<td property_value="+722616807" property_name="Hand_Phone" align="center">+18007</td>
</tr>
</tbody>
</table>
</div>
L'alignement du texte fonctionne parfaitement pour les éléments td
mais échoue pour les th
. Pourquoi?
Essayer:
text-align: center;
Vous connaissez peut-être l'attribut HTML align (qui n'est plus disponible depuis HTML 5). L’attribut align peut être utilisé avec des tags tels que
<table>, <td>, and <img>
spécifier l'alignement de ces éléments. Cet attribut vous a permis d’aligner des éléments horizontalement. HTML avait/avait aussi un attribut valign pour aligner les éléments verticalement. Cela a également été interrompu de HTML5.
Ces attributs ont été abandonnés au profit de l'utilisation de CSS pour définir l'alignement des éléments HTML.
Il n'y a pas réellement de propriété CSS align ou CSS valign. CSS a plutôt le texte-align qui s'applique au contenu incorporé d'éléments de niveau bloc et la propriété vertical-align qui s'applique aux cellules de niveau et de tableau incorporés.
Essayez d'utiliser le style pour
th {text-align:center}
Essayez d'utiliser l'attribut style-aligner dans le style pour aligner le centre.
<th class="not_mapped_style" style="text-align:center">DisplayName</th>
Si vous voulez centrer le th de toutes les tables:table th{ text-align: center; }
Si vous voulez seulement centrer le th d'une table avec un identifiant déterminé:table#tableId th{ text-align: center; }
HTML:
<tr>
<th>Language</th>
<th>Skill Level</th>
<th> </th>
</tr>
CSS:
tr, th {
padding: 10px;
text-align: center;
}
Dans HTML5 , le moyen le plus simple et le plus rapide de centrer votre <th>THcontent</th>
consiste à ajouter une colspan
comme ceci:
<th colspan="3">Thcontent</th>
Cela fonctionnera si votre table est composée de trois colonnes. Donc, si vous avez un tableau à quatre colonnes, ajoutez une colspan
de 4, etc.
Vous pouvez également gérer l'emplacement dans le fichier CSS lorsque vous avez mis votre colspan
en HTML, comme je l'ai dit.
th {
text-align: center; /* Or right or left */
}
Votre code fonctionne, mais il utilise des méthodes obsolètes. Pour ce faire, vous devez utiliser la propriété CSS text-align
plutôt que la propriété align. Même dans ce cas, il doit s'agir de votre navigateur ou de quelque chose qui le concerne. Essayez cette démo dans Chrome (je devais désactiver normalize.css pour le rendre).