Une bonne façon d'ajouter de l'espace entre les html les lignes de la table à l'aide de css? Fonctionne sur tous les navigateurs, y compris IE6
Ce qui est un bon moyen d'ajouter de l'espace entre les html les lignes de la table à l'aide de css? Devrait fonctionner dans tous les navigateurs, y compris IE6. Devrait utiliser des id ou une classe de sorte qu'il n'affecte pas tout le tableau dans le site. Préférez déclarer le css au niveau de la table. Ne voulez pas utiliser de vide tr pour simuler une ligne vide. css ne devrait pas affecter toutes les tables internes.
Logiquement, j'ai essayé ceci mais les marges ne fonctionnent pas avec tr:
.someclass tr
{
margin-bottom:20px;
}
OriginalL'auteur Tony_Henrich | 2011-05-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser:
Ce n'est malheureusement pas intuitive, mais il fonctionne sous IE6 et tous les autres navigateurs. Vous pouvez aussi le faire avec une bordure:
Modifier
À exclure une table interne, vous pouvez utiliser:
Avez-vous des tables imbriquées? Pourriez-vous fournir un échantillon sur jsfiddle pour nous de regarder?
Voir jsfiddle.net/zzJ9Z/3. C'est à partir de l'une des autres réponses.
Je ne suis pas encore tout à fait sûr de ce que vous faites référence avec la case à cocher. J'ai édité ma réponse à montrer comment vous pouvez exclure des tables internes d'hériter de la marge.
OriginalL'auteur Brian Fisher
border-spacing est la bonne façon de faire, mais ne pas répondre à toutes vos exigences.
Encore, vous pouvez l'utiliser en combinaison avec un peu du navigateur de détection: si IE < 8, utiliser un peu de javascript pour ajouter un peu de cellspacing.
Si tu avais lu le lien fourni, la solution est simple. IE<8 ne prend pas en charge
border-spacing
etborder-spacing
remplacecellpadding
attribut d'élément. Ensemblecellpadding
attribut sur la table, puis également définir laborder-spacing
dans le css.cellspacing ajoute un espace supplémentaire autour de la td à partir des quatre côtés, je ne veux pas. Je ne veux plus d'espace entre les lignes en gardant tout le reste intact. Comme les deux div l'une au dessus de l'autre, avec un écart entre eux. Pas d'espace supplémentaire pour le haut, à gauche & côté droit. Logiquement comme le css que j'ai dans mon post.
l'amélioration progressive manière de traiter ce serait de ne pas avoir l'espacement pour IE<8 OU à accepter le fait que IE<8 aura de l'espace sur les côtés. Si vous voulez quelque chose qui fonctionne dans tous les navigateurs, ajouter un vide tr...
OriginalL'auteur quasistoic
Ajouter la règle suivante pour tr et cela devrait fonctionner
De l'échantillon (Ouvrir dans IE9 offcourse 🙂 ):
http://jsfiddle.net/zshmN/
OriginalL'auteur Sandeep Choudhary
Ci-dessus crée un fossé entre les 2 lignes avec le
<br>
tagOriginalL'auteur anand24
Si vous ne voulez pas de la frontière trop gros/épais (avec
border-spacing
), vous pouvez utiliserpadding
sur letd
.http://jsfiddle.net/zzJ9Z/
border-spacing
de ne pas augmenter laborder-width
. Il ajoute de l'espace entre les frontières detd
éléments (mais vous devez utiliser la valeur par défautborder-collapse
deseparate
). Ainsi, labackground
qui serait visible est labackground
situé dans letr
ou d'un autre élément parent.Comment pouvez-vous arrêter innertables de l'héritage de propriétés de la table parent? Voir innertable jsfiddle.net/zzJ9Z/3
Merci @Kevin. Mon mauvais. Je me suis souvenu de mal. 😉
OriginalL'auteur Jason Gennaro