Como centrar un div con CSS

Con CSS Grid

Para centrar un div con Grid Layout definimos body como nuestra etiqueta contenedora y obtenemos el largo de manera dinámica con height: 100vh; viewport height, es decir que cada que se cambie el tamaño del largo este valor se actualizara recalculando la posición de nuestro div.circulo.

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Centrar un DIV con Grid</title>
    <style>
        body{
            display: grid;
            place-content: center;
            height: 100vh;
        }
        .circulo{
            width: 70px;
            height: 70px;
            background-color: red;
            border-radius: 50%;
        }
    </style>
</head>
<body>
    <div class="circulo"></div>
</body>
</html>

Con CSS Flexbox

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Centrar un DIV con Flexbox</title>
    <style>
      body {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
      }
      .cuadro {
        width: 70px;
        height: 70px;
        background-color: blue;
      }
    </style>
  </head>
  <body>
    <div class="cuadro"></div>
  </body>
</html>

Con CSS

Creamos un contenedor del tamaño del ancho width: 100%; y del alto height: 100vh; viewport height del navegador, estos valores son dinámicos es decir en cuanto cambie el tamaño del navegador el contenedor seguirá del tamaño de este., el div lo centramos con top y left calculando el 50% del tamaño del navegador menos la mitad del tamaño del elemento para que nos quede al centro de este.

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Centrar un Div con CSS</title>
    <style>
        .container {
            width: 100%;
            height: 100vh;
            position: relative;
        }
        .bredondo{
            width: 64px;
            height: 64px;
            border-radius: 25%;
            position: absolute;
            background: green;
            top: calc(50% - 32px);
            left: calc(50% - 32px);
        }
        
    </style>
</head>
<body>
    <div class="container">
        <div class="bredondo"></div>
    </div>
</body>
</html>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Centrar un Div con CSS</title>
    <style>
        .container {
            width: 100%;
            height: 100vh;
            position: relative;
        }
        .bredondo{
            width: 64px;
            height: 64px;
            border-radius: 25%;
            position: absolute;
            background: blueviolet;
            inset: 0;
            margin: auto;
        }
        
    </style>
</head>
<body>
    <div class="container">
        <div class="bredondo"></div>
    </div>
</body>
</html>
View more articles
  • Como instalar Fedora en MacBookPro15,1 MacBook Pro (15-inch, 2018)

    Mi MacBookPro15,1 la uso para desarrollo y ya no soporta las nuevas versiones de MacOS solo hasta Sequoia (15.x)., por lo que he optado por la mejor solucion instalarle Fedora Linux que es la distro que mas me gusta. Este equipo es de los primeros en implementar un chip de seguridad T2. Este chip maneja…

  • Instalar Fedora MacBookPro9,2 MacBook Pro 13-inch Mid 2012

    Tenia a la mano un MacBookPro que usaba para trabajar ya la había actualizado hasta el tope con 16GB de RAM y un SSD SATA y que a la fecha es un equipo viejo, decidí instalarle una de mis distribuciones de Linux preferidas Fedora, así que te comparto una guía de instalación. Todo funciona perfecto…

  • Como Fabricar Un Adaptador Alámbrico E Inalámbrico Para Controles De Videojuegos Compatible En Varias Consolas Con Joypad OS

    Joypad OS es un firmware para placas de microcontroladores (RP2040, ESP32-S3, nRF52840) con el cual puedes fabricar un adaptador tanto alámbrico como inalámbrico para controles de videojuegos. Podrás conectar estos controles USB y Bluetooth: Xbox PlayStation Nintendo 8BitDo Mandos inalámbricos: Adaptadores USB: Otros controladores compatibles Consolas compatibles Modo Descripción SInput Modo compuesto predeterminado: funciona en…