Contenido del curso
Fundamentos de Laravel
- 3

Qué es Artisan y cómo automatiza Laravel
04:23 min - 4

Rutas básicas en Laravel con web.php
06:44 min - 5

Cómo retornar vistas Blade en Laravel
07:02 min - 6

Plantillas Blade para vistas sin código repetido
06:03 min - 7

Controladores en Laravel con Artisan
07:17 min - 8

Migraciones en Laravel como control de versiones
07:01 min - 9

Modelos y factories en Laravel con datos falsos
06:56 min - 10

Consultas a base de datos con Eloquent
08:26 min - 11

Relaciones entre tablas con belongsTo en Laravel
05:37 min
Manos a la obra con nuestro proyecto
- 12

Revisión de arquitectura MVC en Laravel
02:15 min - 13

Instala el login de Laravel con Breeze
05:41 min - 14

Rutas de login y logout en Laravel Breeze
04:22 min - 15

Rutas y vistas con Route::resource en Laravel
03:59 min - 16

Listado de posts con paginación en Laravel
04:36 min - 17

Formulario para eliminar registros en Laravel
04:53 min - 18

Vistas de creación y edición con formulario compartido
06:49 min - 19

Formulario CRUD reutilizable en Laravel
05:02 min - 20

Guardar registros con relaciones en Laravel
06:06 min - 21

Método update en Laravel sin reescribir código
01:44 min - 22

Validación de formularios en Laravel con old()
04:43 min - 23

Validación unique en Laravel sin duplicados
05:32 min
Trabajemos en el diseño web de nuestro proyecto
- 24

Diseño del header con Tailwind y Laravel
Viendo ahora - 25

Divisor con gradiente en Tailwind CSS
03:50 min - 26

Construye la vista home de tu blog en Laravel
06:36 min - 27

Sección destacada con posicionamiento absoluto en Tailwind
04:15 min - 28

Diseño de página de publicación con Tailwind
02:33 min - 29

Formulario de búsqueda con Laravel y LIKE
04:18 min - 30

Cómo detectar el problema N+1 en Laravel
06:12 min
Cierre
Diseño del header con Tailwind y Laravel
Resumen
Diseñar el área pública de un proyecto en Laravel implica algo más que escribir HTML: requiere conectar correctamente las hojas de estilo, organizar las imágenes en la carpeta correcta y entender cómo Tailwind CSS compila las clases que realmente usas. Si estás aprendiendo a integrar Tailwind con Blade, aquí verás el flujo completo para montar un encabezado funcional con logo, formulario de búsqueda y estilos aplicados.
¿Dónde se guardan las imágenes en un proyecto Laravel?
La carpeta public es el punto de partida para servir recursos estáticos. Dentro de ella conviene crear una subcarpeta dedicada a las imágenes del proyecto.
En la práctica, descargas las imágenes que vas a usar (por ejemplo, un logo y una ilustración relacionada con desarrollo) y las renombras de forma clara: logo y dev. Guardarlas con nombres descriptivos te ahorra confusiones cuando el proyecto crezca [00:30].
¿Dónde debo poner las imágenes en Laravel? Dentro de la carpeta
public, en una subcarpeta comoimages. Desde ahí Laravel las sirve directamente sin pasar por el sistema de rutas.
¿Cómo enlazar el archivo CSS de Tailwind en Blade?
Para que los estilos se apliquen, necesitas importar el archivo CSS dentro de la plantilla Blade usando la función asset() con la ruta correspondiente.
La sintaxis es directa: dentro de las llaves dobles de Blade, llamas a asset('css/app.css'). Al actualizar el navegador, el enlace queda configurado y Tailwind empieza a responder. Este paso es la base para que cualquier clase utilitaria funcione [01:25].
Estructura del contenedor principal
El encabezado parte de un div contenedor con clases para centrar el contenido y aplicar relleno lateral. Dentro de él se construye la jerarquía completa del header.
- Un enlace que envuelve la imagen del logo, renderizada con
asset('images/logo.png'). - Un formulario con un input que incluye un
placeholdercon el texto Buscar. - Un bloque adicional para la función de navegación o acciones del usuario.
Esta organización separa claramente la marca, la búsqueda y las acciones, que es el patrón clásico de cualquier header moderno.
¿Qué clases de Tailwind necesito para un header flexible?
Las clases utilitarias de Tailwind permiten describir el comportamiento visual sin escribir CSS personalizado. Para el encabezado se aplican estas combinaciones:
flexpara convertir el header en contenedor flexible.justify-betweenpara separar elementos a los extremos.items-centerpara alinear verticalmente al centro.py-4para añadir relleno superior e inferior de nivel cuatro.
El div interno que agrupa logo y formulario también usa flex e items-center, pero suma flex-grow para que crezca respecto a su hermano y gap-4 para dejar un espacio limpio entre el logo y el campo de búsqueda [03:15].
¿Para qué sirve flex-grow en Tailwind? Hace que un elemento ocupe el espacio disponible dentro de un contenedor flex, empujando a sus hermanos hacia los bordes según la configuración de justificación.
¿Por qué algunas clases de Tailwind no se aplican?
Aquí viene lo interesante. Si actualizas el navegador y notas que clases como h-12 no existen en el CSS final, no es un error tuyo: es el comportamiento esperado de Tailwind.
Tailwind compila únicamente las clases que detecta en tus vistas, según la configuración del archivo tailwind.config.js. Esto mantiene el CSS final ligero, pero significa que cada vez que agregas clases nuevas debes recompilar.
El comando que dispara esa compilación es npm run dev. Al ejecutarlo, Tailwind escanea las plantillas, detecta las clases recién añadidas y regenera el archivo app.css. Después de eso, al refrescar el navegador, las clases ya existen y los estilos se aplican correctamente [04:40].
Flujo recomendado al añadir clases nuevas
- Escribe las clases en tu plantilla Blade.
- Ejecuta
npm run devpara recompilar el CSS. - Actualiza el navegador para verificar que los estilos se aplicaron.
Este ciclo de tres pasos se vuelve automático cuando trabajas con Tailwind a diario, y entenderlo evita horas de depuración buscando errores que en realidad son recompilaciones pendientes.
¿Qué viene después del encabezado?
Con el header funcionando, el contenedor centrado y las imágenes cargando desde public/images, ya tienes la base del área pública. El siguiente paso natural es agregar elementos visuales personalizados, como una línea con degradado que separe el encabezado del resto del contenido.
¿Has tenido problemas con clases de Tailwind que no aparecen en tu CSS final? Cuéntame cómo lo resolviste en los comentarios.