En este post te enseñaré cómo centrar una imagen dentro de un div usando el framework CSS Bulma. Hay varias formas, pero te enseñaré la que me ha funcionado hasta el momento.
Alinear imagen al centro
Vamos al grano y veamos cómo hacer que una imagen esté alineada al centro en Bulma. Debemos encerrar la imagen en un contenedor con la clase has-text-centered
y agregar la clase is-inline-block
a la imagen.
De manera opcional podemos agregar el width
automático para la imagen.
Ejemplo: centrar imagen
Para terminar este post veamos un ejemplo completo. Voy a basarme en mi plantilla de Bulma. El código HTML queda así:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Centrar imagen con Bulma - By Parzibyte</title>
<link rel="stylesheet" href="https://unpkg.com/bulma@0.9.1/css/bulma.min.css">
</head>
<body>
<nav class="navbar is-warning" role="navigation" aria-label="main navigation">
<div class="navbar-brand">
<a class="navbar-item" href="https://parzibyte.me/blog">
<img alt=""
src="https://raw.githubusercontent.com/parzibyte/ejemplo-mern/master/src/img/parzibyte_logo.png"
style="max-height: 80px"/>
</a>
<button class="navbar-burger is-warning button" aria-label="menu" aria-expanded="false"
data-target="navbarBasicExample">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</button>
</div>
<div class="navbar-menu">
<div class="navbar-end">
<div class="navbar-item">
<div class="buttons">
<a target="_blank" rel="noreferrer" href="https://parzibyte.me/l/fW8zGd"
class="button is-primary">
<strong>Soporte y ayuda</strong>
</a>
</div>
</div>
</div>
</div>
</nav>
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", () => {
const boton = document.querySelector(".navbar-burger");
const menu = document.querySelector(".navbar-menu");
boton.onclick = () => {
menu.classList.toggle("is-active");
boton.classList.toggle("is-active");
};
});
</script>
<section class="section">
<div class="columns">
<div class="column has-text-centered">
<h1 class="is-size-1">Aquí la imagen:</h1>
<img class="is-inline-block" src="https://picsum.photos/600" style="width: auto;">
</div>
</div>
</section>
</body>
</html>
El código relevante está en la línea 52 con la clase para centrar, y en la línea 54 con la imagen usando la clase is-inline-block
.
El resultado ya lo he dejado al inicio. Si quieres puedes leer más sobre Bulma o CSS.