¿Cómo definir medidas en CSS usando min, max, viewport width y viewport height?
Definir las medidas y tamaños de los elementos que construimos en una página web es fundamental para asegurar una experiencia de usuario adecuada. Este enfoque permite que las interfaces sean más fluidas y adaptables a distintos dispositivos. En esta clase, exploraremos cómo el uso conjunto de las unidades de medida min, max, viewport width (vw), y viewport height (vh) nos ayuda a lograr un diseño flexible y responsivo.
¿Qué es el viewport width (vw) y viewport height (vh)?
viewport width (vw) y viewport height (vh) son unidades de medida relativas al tamaño de la ventana gráfica del navegador:
vw: Un vw es igual al 1% del ancho de la ventana gráfica.
vh: Un vh es igual al 1% de la altura de la ventana gráfica.
Estas unidades son increíblemente útiles para hacer que los elementos ocupen un porcentaje específico del espacio visible del navegador, independientemente del tamaño de la ventana.
Aplicación práctica en estilos CSS básicos
Para comenzar a entender estas medidas, implementamos un diseño básico en HTML y CSS:
Al utilizar 100vw y 100vh en el contenedor principal (main), nos aseguramos de que ocupe todo el viewport independientemente del tamaño del dispositivo.
Explorando min-width, max-width, min-height y max-height
Las propiedades min-width, max-width, min-height, y max-height permiten restringir el tamaño mínimo y máximo que puede alcanzar un elemento. Esto ayuda a controlar el crecimiento y contracción del contenido de manera ordenada dentro de las restricciones de diseño.
Al usar min-width: 320px; y max-width: 500px;, indicamos que el tamaño del ancho del <section> debe comenzar desde 320 píxeles y no puede crecer más allá de 500 píxeles. Este rango asegura flexibilidad sin exceder límites prácticos.
Solución al problema de overflow en contenido
El overflow, o desbordamiento, ocurre cuando el tamaño del contenido excede el espacio disponible en el contenedor. Esto es común cuando se define una altura fija y el contenido es dinámico.
Uso de min-height en lugar de una altura fija
Para resolver el desbordamiento podemos utilizar min-height:
section{min-height:500px;/* Otros estilos */}
Al utilizar min-height para el contenedor, permitimos que crezca más allá de sus 500 píxeles originales si el contenido lo requiere, proporcionando espacio adicional.
Resumen
Implementar unidades de medida relativas como vw y vh, junto con los límites de min y max, permite crear diseños web más adaptables y responsivos. Entender múltiples situaciones de uso y cómo manejarlas garantiza una experiencia de usuario óptima en dispositivos de cualquier tamaño. No olvides experimentar y practicar con estos conceptos para integrar de manera efectiva estos principios en tus proyectos web. ¡Sigue aprendiendo y creando!
"Uso de Viewport y Dimensiones en CSS: min-width, max-width, min-height"
Esta clase tiene un typo :ccc height debe llevar "vh" sugiero que suban esta clase nuevamente porque esta explicación puede afectar a los estudiantes <3
subiremos esta clase de nuevo pronto, gracias
Esto ya lo cambiaron? o en que parte es eso?
Min-height: se utiliza para definir la altura mínima de un elemento dado. Impide que el valor de la propiedad height llegue a ser más pequeña que la especificada en la altura mínima ( min-height ). Se refiere a la altura del bloque contenedor.
Max-height: se utiliza para definir la altura máxima de un elemento dado. Impide que el valor de la altura pueda llegar a ser más grande que la de max-height . Porcentajes: se refiere a la altura del bloque contenedor.
Min-width: se usa para determinar la anchura mínima de un elemento. Previene que la propiedad width pueda ser inferior que min-width . Aplicable a: elementos de tipo bloque. Porcentajes: se refieren a la anchura del bloque contenedor.
Max-width: define el ancho máximo que un elemento puede tener, max-width cambia el tamaño del elemento si el valor de width es mayor que el de max-width.
Principalmente para Overflow, cuando se desborde el contenido y la altura sea poca, el mínimo tamaño que tendrá el contenedor será min-height y a partir de ahí crecerá lo que necesite.
Gracias.
Hola. Como sabrá, estamos viendo muchas etiquetas y atributos, por lo que olvidarlas será fácil si no las escribimos en algún lado. Podemos escribir nuestros apuntes de código en Word, Bloc de Notas, etc.
Aunque quiero compartirles Typora, un programa gratis, minimalista y poderoso para almacenar nuestras notas personales y nuestros fragmentos de código.
La checare, muchas gracias!
Totalmente de acuerdo, es muy fácil olvidar si no practicamos.
Que mejor que tener notas para poder recordar lo visto en cada clase :)
Puedes probar también OneNote... es poderoso... y puedes dar una organización bastante interesante a nivel de rutas>pestañas>temas con la libertad de tomar notas, pegar imagenes, agregar enlaces de video directamente etc.
section ocupara el 50% del ancho y alto con respecto a su padre directo que es main
main ocupara el 80% del ancho y alto con respecto al viewport (área visible del usuario de una página web.)
No había entendido y gracias a este aporte me quedo claro, gracias!
x2
Gracias por el aporte!!
Excelente aporte
Este ejemplo queda perfecto para lo que nos mostró Diego sobre Max/Min Width 👇🏼
Super tu aporte! muy gráfico.
Como haces eso? son Gifs o que son?
x2
Les comparto un pequeño proyecto que me propuse y logré:
Objetivo:
Resultado:
jajajjajajajaja
Lo hice tambien! buen ejercicio
Estoy aprovechando al maximo el platzi day!, ayer me quedé hasta las 5 am viendo videos jajaja
Ya somos dos XD.
pero compratelo, vale la pena cada centavo
¿Qué es la viewport?
Es el área visible del usuario de una página web.
El viewpost varía según el dispositivo y será más pequeña en un teléfono móvil que en una pantalla de computadora.
Antes de las tabletas y los teléfonos móviles, las páginas web estaban diseñadas solo para pantallas de computadora, y era común que las páginas web tuvieran un diseño estático y un tamaño fijo.
Luego, cuando comenzamos a navegar por Internet usando tabletas y teléfonos móviles, las páginas web de tamaño fijo eran demasiado grandes para caber en el viewport. Para solucionar este problema, los navegadores de esos dispositivos redujeron la página web completa para adaptarse a la pantalla.
Una regla importante cuando vayamos a utilizar el min y el max en el width, necesitamos tener un width base y casi siempre este va a ser en porcentaje.
Lorem*8 sirve para agregar texto en párrafo.
Problema de overflow, quiere decir que tenemos mas texto contenido que el mismo espacio del contenedor padre.
TIPS: 1vw o 1vh equivale a 1% por eso al poner el 100vw y 100vh cubre toda la pantalla XD
Podría aplicarse para width pero para height no.
¿Que es Lorem ipsum?
Lorem ipsum es un texto sin sentido que aplicamos para llenar espacios donde podría ir texto, así como podríamos poner “alkjdljkakjasljakldjaadlakj” para rellenar un espacio, en el desarrollo y diseño es buena practica aplicar el Lorem Ipsum para dar a entender que ahí podrá haber un texto.
.
En VS escribiremos “loremxY” sea Y el número de palabras que queramos generar.
Gracias!
Esto se usa bastante para empezar a adecuar los MediaQuery para responsive.
max = hasta
min = desde
Algo curioso que pasa con imagenes es que si usamos
max-width: 100%, le estamos diciendo que no puede crecer mas de su propio ancho original. Si usamos solo width: 100%, la imagen intentara estirarse para abarcar el ancho de su contenedor, esto pixelea la imagen.
Excelente dato, ¡me lo apunto!
Buen aporte
He intentado aplicar todos los conocimientos en este layout
. Cuando estoy intentando aprender algo tiendo a escribirlo y de esa forma analizo y entiendo mis pensamientos para plasmarlos a través de la escritura. Cuando voy a usar algo, lo busco allí. No lo escribo para luego leer todo el documento y estudiarmelo. Lo escribo para consultar mi entendimiento al momento que entendí el concepto plasmado.
section{width:80%;/*debemos tener un width base que normalmente sera en porcentaje*/ min-width: 320px;/*limitamos el tamaño que se va a encojer*/ max-width: 500px;/*limitamos el tamaño que va a crecer*/ min-height: 500px;margin:0 auto; background-color: red;}/*un error comun es que le asignamos un tamaño a nuestro contenedor pero el contenido es demasiado
que se desborda del contenedor una forma de solucionarlo es asignar un tamaño min que permite
que nuestro contenedor crezca según el contenido que se tiene. */```
muy tranquilo aprendiendo css pero te enseñan lorem*8 y aprendes a invocar al diablo