231 of 313 menu

Propiedad position

La propiedad position define el método de posicionamiento de elementos. Esta propiedad se utiliza con mayor frecuencia junto con las propiedades top, right, bottom, left, que establecen los márgenes superior, derecho, inferior e izquierdo respectivamente.

Sintaxis

selector { position: absolute | relative | fixed | static | sticky; }

Valores para position

Valor Descripción
absolute Posicionamiento absoluto. El elemento se elimina del flujo normal del documento y se posiciona en relación al ancestro posicionado más cercano (si existe) o en relación a la ventana del navegador.
relative Posicionamiento relativo. El elemento se desplaza en relación a su posición normal en el flujo del documento, pero el espacio que ocupaba permanece reservado.
fixed Posicionamiento fijo. El elemento se elimina del flujo normal del documento y se posiciona en relación a la ventana del navegador. Permanece en su lugar al desplazarse la página.
static Posicionamiento estático. Este valor significa que no hay posicionamiento y el elemento se comporta normalmente.
sticky Posicionamiento adherente. El elemento se comporta como relative hasta que alcanza una posición especificada al desplazarse, después de lo cual se adhiere al lugar indicado (como fixed).

Valor por defecto: static.

Ejemplo . Posicionamiento absoluto

Coloquemos el elemento en la esquina superior izquierda de la pantalla con pequeños márgenes:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Ejemplo . Posicionamiento absoluto

Y ahora coloquemos el elemento en la esquina superior derecha de la pantalla con pequeños márgenes:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; right: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Ejemplo . Posicionamiento fijo

Con posicionamiento fijo, el elemento permanecerá en su lugar al desplazarse:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: fixed; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Ejemplo . Posicionamiento relativo

Con posicionamiento relativo, el elemento se desplaza en relación a su posición normal, pero los demás elementos se comportan como si el elemento no se hubiera desplazado:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { display: flex; justify-content: flex-row; } .elem { margin: 0 3px; width: 100px; height: 100px; background-color: #add8e6; } .elem2 { position: relative; top: 20px; left: 30px; background-color: #e6addf; }

:

Ejemplo . Anidamiento

Si la propiedad position del padre tiene el valor relative, entonces los elementos con posicionamiento absoluto se posicionarán en relación al padre:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

Ejemplo . Anidamiento

Si la propiedad position del padre tiene el valor absolute, entonces los elementos con posicionamiento absoluto se posicionarán en relación al padre:

<div class="container"> <div class="elem"></div> </div> .container { position: absolute; top: 30px; left: 30px; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

Ejemplo . Posicionamiento adherente

Si para un elemento la propiedad position tiene el valor sticky, entonces el elemento se comporta como relative hasta que alcanza una posición especificada al desplazarse, después de lo cual se adhiere al lugar. Hagamos un encabezado adherente:

<h1>Encabezado Principal del Sitio</h1> <div class="header">encabezado encabezado encabezado</div> <div class="main"> some long text </div> h1 { text-align: center; } .header { position: sticky; top: 0; padding: 20px; background: #f0f0f0; text-align: center; font-weight: bold; } .main { width: 400px; margin: 20px auto; border: 1px solid #ccc; padding: 20px; text-align: justify; }

:

Ejemplo . Sin posición

Si a un elemento se le asigna posicionamiento absoluto sin especificar la posición, entonces el elemento permanecerá en el lugar donde estaba sin posicionamiento, pero los demás elementos dejarán de detectarlo:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

Ejemplo . Un eje

Con posicionamiento absoluto se puede especificar la posición solo en un eje. Por ejemplo, si establecemos la propiedad top, verticalmente el elemento se colocará en la posición indicada, pero horizontalmente permanecerá donde estaba:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; top: 20px; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

Ejemplo . Todas las posiciones

Con posicionamiento absoluto se pueden especificar posiciones en todos los lados, sin establecer ancho y alto. En este caso, el elemento se colocará en el centro del bloque padre:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 20px; bottom: 20px; left: 20px; right: 20px; background-color: #add8e6; }

:

Véase también

  • la propiedad z-index,
    que establece la superposición de elementos
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar