Elegir entre Flexbox y CSS Grid puede parecer una tarea abrumadora, pero con la información correcta, es más sencillo de lo que parece. Ambas tecnologías son poderosas y ofrecen soluciones únicas para construir interfaces de usuario eficientes y bonitas. Vamos a explorar cuándo y cómo usar cada una.
¿Cuándo es mejor usar Flexbox?
Flexbox es ideal cuando nuestra necesidad es alinear elementos en un eje específico, ya sea horizontal o vertical. Aquí tienes algunos consejos para saber cuándo es más adecuado utilizar Flexbox:
Alineación de elementos: Si necesitas alinear hijos en un único eje.
Distribución funcional: Útil para componentes pequeños, como un menú vertical o una barra de navegación.
Flexibilidad de contenido: Se adapta automáticamente a cambios en el tamaño del contenedor o de los elementos.
CSS Grid destaca por su habilidad para trabajar con disposiciones bidimensionales. Es perfecto para diseñar layouts de página más complejos que requieren colocar elementos en filas y columnas. Aquí te indico algunas situaciones donde CSS Grid es más ventajoso:
Diseños complejos: Cuando necesitas un control total sobre una cuadrícula con filas y columnas.
Adaptabilidad total: Ideal para proyectos donde es esencial un diseño responsive avanzado.
Organización estructural: Muy útil para paneles de control o páginas de aterrizaje con múltiples secciones.
A veces, la combinación de Flexbox y CSS Grid puede ser la solución ideal, especialmente en el diseño de componentes más complejos donde se requieren las fortalezas de ambos.
Componentes anidados: Puedes usar CSS Grid para un diseño de página completo, y Flexbox para alinear los elementos dentro de un contenedor específico.
Flexibilidad y estructura: Aprovecha CSS Grid para la estructura rígida y Flexbox para la flexibilidad interna.
Ambos estilos pueden coexistir en un mismo proyecto. La clave es reconocer qué necesitas para cada sección y aplicar la tecnología que mejor se adapte. Continuar aprendiendo y practicando estas tecnologías es vital para dominar el diseño CSS moderno.
No olvides explorar, experimentar y personalizar tus diseños para sacar el máximo provecho de Flexbox y CSS Grid. ¡Sigue adelante y diversifica tus habilidades de diseño web!
Casi nunca comparto nada, pero me gusto como quedo jsjs.
Hahaha quedó espectacular Guillermoooo 😍💚
Graciassss c: jaja.
PD: Estoy emocionado por sus nuevos cursos 💚💚
De nuevo Flexbox, es más fácil ir metiendo todos los íconos y que se vayan acomodando solitos jaja
También Flexbox, lo veo más como elementos en bloque que puede tener dos hijos alineados de forma inline 🤔. Aunque también podría usar CSS Grid
.
El 5 lo hice únicamete con Flexbox y el flujo normal del documento uwu:
.
.
Acá el código:
.
HTML
<div class="card"><div class="card-header"><div class="circle-image"><img src="https://randomfox.ca/images/85.jpg" alt="Zorrito:3"></div><div class="info"><h3>Title goes here</h3><p>Secondary text</p></div></div><img src="https://randomfox.ca/images/46.jpg" alt="Otro zorrito:3"><p>Lorem ipsum dolor sit amet consectetur adipisicing elit.Temporibus libero unde ipsa facere atque debitis omnis!Ipsum commodi unde sed fugiat, libero necessitatibus nihil.At temporibus perferendis rerum ea quas.</p><div class="links"><a href="#">ACTION1</a><a href="#">ACTION2</a></div></div>
Les quiero dejar un pequeño descubrimiento que hice. Actualmente estoy armando una plataforma donde una profesora de ingles pueda subir sus clases para los alumnos que ella tiene.
.
Decidí armar una lista similar a la que tiene duolingo para sus cursos, y descubrí que duolingo utiliza grid.
El problema era que no tenía idea de como armar los grids para que se vean así, por lo que me decaté por flexbox y terminó quedando así. De todas formas tuve que usar javascript para hacer una matraca rara y subdividir las clases en divs de 2 y 3, pero esa es otra historia
Aca mi aporte:
I liked your card! 👌🏻⚽
Que grande el cabezon! Viva Argentina, Viva Maradona, Viva los campeones del 86, Viva Ruggeri!!!!!!!!!
Good job.
Adjunto enlace de mi repositorio de este curso en GitHub para quien desee echarle un vistazo más detalladamente.
Codigo
Reto hecho con css-grid
Html
<main><section class="card"><header class="card__header"><figure class="card__header-img"><img src="./shikimori-small.jpeg" alt="profile-shikimori"/></figure><h2 class="card__title">ShikimoriMicchon<br /><span class="card__title--light">CutieStudent</span></h3></header><figure class="card__main-img"><img src="./shikimori.jpg" alt="Shikimori micchon"/></figure><p class="card__description">I'm a very confident, caring, and kind person. I'm also a very
competitive very athletic and active all the time.</p><footer class="card__footer"><button class="card__btn card__btn--primary">Follow</button><button class="card__btn card__btn--secondary">Dislike</button><figure class="card__love-icon"><img src="./like.svg" alt="like-icon"/></figure><figure class="card__share-icon"><img src="./share.svg" alt="share-icon"/></figure></footer></section></main>
esas imagenes de compartir y dar like de donde las puedo sacar?
y una vez terminas de hacer el codigo y todo... como le sacas esas capturas de pantalla para compartir lo que hiciste?
los iconos los baje de google fonts, hay un apartado de iconos, los filtre por, favorite para el corazon y share para el icono de compartir.
A la derecha del listado de iconos te aparecen unas opciones para personalizarlos si los quieres rellenos o no y otras mas, lo descargas en formato svg.
En el codigo los insertas como una imagen normal, y para cambiarle de color tienes que abrir el svg y editarlo, yo lo hice agregando un atributo llamado fill justo despues del path, fill="#eee", ejemplo <path fill="#eee" ........
Y para la captura, le tomo una captura normal con la tecla de captura del teclado y con un editor en linea la recorto, escribo en google algo asi como "recortar imagen online".
hay varias formas de hacerlo, pero asi se me ocurrio en ese momento y no tengo programa para editar por eso busco online, espero te sirva :).
Mi resultado del reto.
Me recordó mucho a Leo :,3 Excelente resultado !
Hola! les comparte mi aporte usando parte del Código del compañero @guillermo_farfan_bivanco, no se si sera con las mejores practicas, pero es un buen avance!
<body><div class="card"><div class="card-header"><div class="circle-image"><img src="/assets/logo header blooms desk.png" alt="Zorrito:3"></div><div class="info"><h3>Cactusito</h3><p>Sol, playa y en la arena</p></div></div><div class="container-img"><img class="planta" src="/assets/IMG_20210219_130435.jpg" alt="Otro zorrito:3"><div class="right-grid"><div class="precio"><h4>3<p>$</p></h4></div><p class="p-bottom">Conoce la plantita mas bonita de la tienda, nuestro cacti es proveniente de zonas áridas y con poca agua, puede pasar 1 mes sin agua pero si necesita del sol.</p><div class="links"><div class="buttom-1"><span></span><a href="#">Agregar al carrito</a></div><div class="buttom-2"><span></span><a href="#"> compartir</a></div></div></div></div></div></body>```