2010-01-29 7 views
4

Devrais-je utiliser <br /> et en HTML pour positionner des éléments, ou devrais-je simplement utiliser l'affichage CSS: en ligne avec marge/marge de positionnement et tout style? Quels sont les avantages et les inconvénients des deux?Espaces et nouvelles lignes avec HTML et CSS

+2

Je sens un argument religieux ... –

+4

Y a-t-il un tag 'blague'? – glomad

+0

ce qui est si drôle avec cette question? – ajsie

Répondre

6

Utilisez <br> pour représenter un saut de ligne à l'intérieur d'un élément de bloc et utilisez &nbsp; pour représenter un espace insécable à l'intérieur d'un élément en ligne. Rien de plus. Pour le reste, il suffit d'utiliser CSS de manière intelligente avec l'aide de sous les propriétés display, float, padding et/ou margin.

+0

lorsque j'utilise display: inline sur un élément span un autre élément est toujours positionné à droite de l'élément span. Ne devrait-il pas être dans la ligne suivante? – ajsie

+0

@noname: non un 'span' est un élément en ligne et donc l'affichage en ligne ne fait rien. Si vous voulez l'élément sur une nouvelle ligne, utilisez 'display: block'. – prodigitalson

+0

Un 'span' est par défaut déjà en ligne. Utilisez un élément de ligne ou un élément de bloc ou fermez l'élément de bloc parent et démarrez un nouvel élément de bloc. – BalusC

4

<br /> a ses utilisations, mais si vous vous trouvez en utilisant beaucoup &nbsp, je envisagerais de trouver de meilleurs moyens d'aligner les choses. &nbsp; est juste moche et maladroit.

S'il s'agit de données tabulaires, utilisez une table. Votre vie sera beaucoup plus heureuse.

S'il ne s'agit pas de données tabulaires, utilisez css, comme le suggère BalusC.

1

Idéalement, vous devriez placer tout avec css, et utiliser uniquement <br /> (saut de ligne) et à l'intérieur &nbsp;<p>s. Mais ce n'est pas un monde idéal;)

+0

il a encore IE 6 dans ... –

1

<br /> Peut vraiment aller dans les deux sens. Mais si vous vous trouvez à l'utiliser pour ajuster l'espacement des paragraphes ou quelque chose comme ça, alors vous devez vraiment vous demander "est-il une raison pour laquelle Im utilisant des pauses au lieu d'appliquer une classe pour ajuster les marges? &nbsp; sur l'autre rarement, voire jamais, n'importe quelle sorte de sens en dehors d'un paragraphe (<p />) et la moitié du temps il n'y a pas beaucoup d'utilisation pour cela comment utiliser text-indent est préférable pour indenter le premier paragraphe et beaucoup de chigirn des éditeurs partout Je suis complètement opposé au double espace qui précède les senetences sur le web - en ce qui me concerne, c'est une chose uniquement imprimable.

0

En HTML5, vous avez également la nouvelle http://html5doctor.com/element-index/#w

la réponse est en noir et blanc, cela dépend de votre contenu, parfois, il devrait être
et dans certains cas,   de sorte que le contenu sera sur un seul ligne.

si vous voulez comme bloc, vous pouvez utiliser

0

En utilisant la marge CSS et le rembourrage vous donnera une plus grande flexibilité pour faire des ajustements plus tard.

Questions connexes