2011-04-03 22 views
31

¿Cómo puedo hacer que un elemento se coloque automáticamente en una nueva línea en la página? En HTML podría usar <br>, pero ¿cómo puedo agregar algo como salto de línea en CSS?¿Cuál es el CSS para hacer que algo vaya a la siguiente línea de la página?

Decir que tengo el siguiente código de ejemplo:

<p>Lorem ipsum dolor sit amet, 
    <span id="elementId">consectetur adipisicing elit.</span> 
    Magni totam velit ex delectus fuga fugit</p> 

El lapso sigue en la posición en la misma línea que el resto del texto. ¿Cómo puedo mover el texto del tramo en una nueva línea puramente a través de CSS?

Otro ejemplo es cuando se utiliza display: inline-block o float:

<div class="smalldiv">Lorem ipsum dolor sit amet</div> 
<div class="smalldiv">Lorem ipsum dolor sit amet</div> 
<div class="smalldiv" id="elementId">Lorem ipsum dolor sit amet</div> 
<div class="smalldiv">Lorem ipsum dolor sit amet</div> 

.smalldiv { 
    display: inline-block; // OR 
    float: left; 
} 

¿Cómo puedo mover una de las <div> s en una nueva línea para crear una nueva fila?

+6

Yo ... creo que me acuerdo contigo; ¿Cuál es el 'algo'? –

+1

¿Te has molestado en buscarlo? A menos que tu pregunta sea más complicada, como David cree que puede ser. –

+0

posible duplicado de [problema de posicionamiento div debajo de varios divs flotantes a la izquierda] (http://stackoverflow.com/questions/5414321/trouble-positioning-div-below-several-float-left-divs) – js1568

Respuesta

61

Hay dos opciones que se me ocurren, pero sin más detalles, que no pueden estar seguros de que es el mejor:

#elementId { 
    display: block; 
} 

Esto forzará el elemento a una 'nueva línea' si no está en la misma línea que un elemento flotante.

#elementId { 
    clear: both; 
} 

Esto forzará el elemento a borrar los flotadores, y pasar a una 'nueva línea'.

En el caso del elemento de estar en la misma línea que otra que tiene position de fixed o absolute nada va, por lo que yo sé, forzar una 'nueva línea', como esos elementos se eliminan del flujo normal del documento .

+9

Es curioso cómo fue una pregunta terriblemente escrita, pero Google todavía me la dio como el primer golpe, fue exactamente lo que Estaba buscando, y también la respuesta. – neminem

+0

qué tal si el elemento padre es un elemento en línea. Esto no parece funcionar si ese es el caso. – bflemi3

4

Depende de por qué el objeto está en la misma línea en primer lugar.

clear en el caso de los flotadores, display: block en el caso de contenidos en línea que fluye de forma natural, nada va a derrotar position: absolute como el elemento anterior será sacado del flujo normal por ella.

+1

... se olvidó de '
' –

+5

@Andrew: 'br' es * no * css. –

+0

@David, ha, gritos ': [' es demasiado tarde, probablemente una señal para ir a dormir ... –

5

Tener la visualización de elementos como un bloque:

display: block; 
Cuestiones relacionadas