Botón para abrir el Menú Botón para cerrar el Menú
Logo da empresa Alura
Iniciar Sesión Nuestros Planes
Formaciones Conoce a Luri
  • Programación _
  • Front End _
  • Data Science _
  • DevOps _
  • Innovación y Gestión _
Artículos de Tecnología

CSS Object-fit: trabajando con proporciones

CSS Object-fit: trabajando con proporciones
Lorena Garcia
Lorena Garcia
12/07/2024

Compartir

Mira este artículo:
  1. Conclusión

¡Hola, Dev!

Al aventurarte en este mundo del front-end, seguro que ya te has encontrado con un problema al redimensionar tus imágenes o iframes en CSS, ¿verdad? En este artículo vamos a hablar sobre una propiedad que te puede ayudar con este problema: el Object-fit.

Si ya conoces CSS, probablemente ya has oído hablar de una propiedad llamada background-size. Esta fue creada para dimensionar la imagen de fondo de un componente, así podemos controlar la forma en que la imagen ocupa el área del cuadro (box). Por otro lado, el Object-fit, a pesar de tener un propósito similar, fue desarrollado para imágenes insertadas directamente en la marcación HTML, y no solamente las insertadas como background-image.

En este artículo, abordaremos:

  • La aplicación del object-fit.
  • La sintaxis de esta propiedad.
  • En cuáles elementos podemos utilizarla.

Object-fit

La propiedad Css Object-fit se utiliza para especificar cómo un objeto (imagen, vídeo, iframe o embed) debe ser redimensionado para ajustarse a su contenedor.

Hace referencia a diversos modos de rellenar el contenido dentro del contenedor, como preservar la proporción o estirar y ocupar el máximo del espacio posible.

Para que podamos percibir la diferencia cuando usamos esta propiedad, necesitamos definir una altura y anchura predefinida.

La sintaxis del object-fit posee algunas configuraciones. Veamos algunas de ellas:

object-fit : none
object-fit : fill
object-fit : contain
object-fit : cover
object-fit : scale-dow

¡Adelante vamos a compreender cada una!

Object-fit : none

Observa el ejemplo abajo:

Al observar la imagen, notamos que, con el object-fit: none, la imagen no es redimensionada, de forma que mantiene sus dimensiones originales. Pero, si es menor que el contenedor, la imagen entera será exhibida con su tamaño original. Ya si fuera mayor que el contenedor, será cortada.

Object-fit : fill

Observamos cómo se ve el ejemplo abajo:

Notamos que, si la proporción del contenedor y la etiqueta <img loading="lazy"> no son las mismas, la imagen será estirada.

Este es el valor estándar de la propiedad object-fit. Utilizando este valor, el contenido será redimensionado al tamaño del contenedor independientemente de su proporción.

Object-fit : contain

En este ejemplo, veamos un comportamiento diferente:

Percibimos que si la proporción de la imagen es diferente de la de la etiqueta <img loading="lazy">, quedará una parte del contenedor sin imagen.

Utilizando este valor, la imagen será redimensionada manteniendo su proporción para que toda la imagen quede dentro del contenedor.

Object-fit : cover

Vamos el ejemplo:

Con este valor, la imagen es redimensionada manteniendo su proporción; sin embargo, será redimensionada para que no quede ningún espacio vacío en el contenedor, como vimos en el ejemplo anterior.

Ocasionalmente, será cortada para encajar en el caso de que la proporción de la imagen original no corresponda a la proporción de la caja del contenido.

Object-fit: scale-down

Observa:

Imágenes menores que el tamaño del contenedor permanecen del mismo tamaño (como cuando utilizamos object-fit: none) y las imágenes mayores que el tamaño del contenedor son redimensionadas para encajar en él (como en el object-fit: contain). Utilizando este valor, percibimos que se comporta como si la propiedad object-fit tuviera el valor none o contain dependiendo de cuál de ellos resulta en una imagen menor.

Conclusión

¿Increíble, verdad? Utilizando esta propiedad puedes redimensionar cualquier elemento directamente en la marcación HTML. Además, recuerda que no se utiliza solamente para imágenes, sino también para iframes, vídeos y embeds.

¿Te gustó aprender más sobre object-fit? Te dejo acá esta Formación de HTML y CSS de Alura Latam para que conozcas más sobre HTML y CSS.

Este artículo fue traducido y adaptado por Ingrid Silva

Lorena Garcia

Lorena es estudiante de Análisis y Desarrollo de Sistemas y, actualmente, es monitora de la escuela de Front-end. Le encanta aprender cosas nuevas y compartirlas con otras personas. En su tiempo libre le gusta jugar videojuegos variados, leer libros y ver animes.

Navegación

  • Planes
  • Instructores
  • Blog
  • Política de privacidad
  • Términos de uso
  • Sobre nosotros
  • Preguntas frecuentes

¡CONTÁCTANOS!

  • ¡Quiero entrar en contacto!

Blog

  • Programación
  • Data Science
  • Front End
  • Innovación y Gestión
  • DevOps

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

NOVEDADES Y LANZAMIENTOS

Aliados

  • Programa de aceleração Scale-Up Endeavor
  • En Alura somos unas de las Scale-Ups seleccionadas por Endeavor, programa de aceleración de las empresas que más crecen en el país.
  • Growth Academy 2021 do Google For Startups
  • Fuimos unas de las 7 startups seleccionadas por Google For Startups en participar del programa Growth Academy en 2021
Alura

Powered by

Caelum

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

Cursos

Cursos de Programación
Lógica de Programación | Java
Cursos de Front End
HTML y CSS | JavaScript | React
Cursos de Data Science
Data Science | Machine Learning | Excel | Base de Datos | Data Visualization | Estadística
Cursos de DevOps
Docker | Linux
Cursos de Innovación y Gestión
Transformación Ágil | Marketing Analytics

Alura

  • Educação em Tecnologia

    • logo fiap FIAP
    • logo casa do codigo Casa do Código
    • logo pm3 PM3 - Cursos de Produto
  • Mais Alura

    • logo alura start START BY Alura
    • logo alura lingua Alura Língua
    • logo alura para empresas Alura Para Empresas
    • logo alura latam Alura LATAM
  • Comunidade

    • logo tech guide Tech Guide
    • logo 7 days of code 7 days of code
    • logo Hipsters ponto Jobs Hipsters ponto Jobs
  • Podcasts

    • logo Hipster Network Hipster Network
    • logo Hipsters ponto Tech Hipsters ponto Tech
    • logo Dev sem fronteiras Dev sem Fronteiras
    • logo Like a Boss Like a Boss
    • logo IA Sob Controle IA Sob Controle
    • logo Mesa de Produto Mesa de Produto
    • logo Decode Decode
    • logo FIAPCast FIAPCast