CursosEmpresasBlogLiveConfPrecios

Solución al reto

Clase 8 de 21 • Curso de Sass 2018

Clase anteriorSiguiente clase

Contenido del curso

Preprocesador Sass

  • 1
    Qué aprenderás sobre Sass

    Qué aprenderás sobre Sass

    00:37 min
  • 2
    Introducción al Curso de Sass

    Introducción al Curso de Sass

    00:49 min
  • 3
    Diferencias entre Sass, Stylus y Less

    Diferencias entre Sass, Stylus y Less

    02:37 min
  • 4
    Compilación de código en archivos CSS

    Compilación de código en archivos CSS

    09:13 min

Instalación

  • 5
    Estructura de CSS

    Estructura de CSS

    08:59 min

Variables

  • 6
    Variables

    Variables

    15:22 min
  • 7
    Reto

    Reto

    03:12 min
  • 8
    Solución al reto

    Solución al reto

    Viendo ahora

Anidaciones

  • 9
    Anidaciones

    Anidaciones

    12:12 min

Mixins

  • 10
    Mixins

    Mixins

    10:27 min
  • 11
    Continuando con Mixins

    Continuando con Mixins

    05:42 min
  • 12
    Uso de la directiva `content` (`block` en Stylus)

    Uso de la directiva `content` (`block` en Stylus)

    05:38 min
  • 13
    Extend

    Extend

    11:01 min

Funciones

  • 14
    Funciones

    Funciones

    05:43 min
  • 15
    Directiva

    Directiva

    03:25 min
  • 16
    Ejemplos de funciones

    Ejemplos de funciones

    05:42 min
  • 17
    Reto

    Reto

    01:13 min
  • 18

    Reto - Solución

    00:44 min

Controles de Flujo

  • 19
    Listas y directiva each

    Listas y directiva each

    05:24 min
  • 20
    Ciclos FOR/EACH

    Ciclos FOR/EACH

    04:07 min
  • 21
    Condicionales

    Condicionales

    11:05 min
Tomar examen
Resumen

En esta clase te voy a mostrar cómo solucionar el reto que te propuse en la clase anterior. Lo primero que vamos a hacer es definir los elementos de HTML.

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads
        Juan C Felizzola

        Juan C Felizzola

        student•
        hace 8 años

        Mientras suben los archivos se los dejo acá:

        styles.sass

        // Librerias, settings y variables @import 'lib/_variables.sass' // Elementos base @import '_tablas.sass' @import 'base/_botones.sass' @import 'base/_tipografia.sass' // Components @import 'components/_grids.sass' // Esto va de último @import 'components/_utilities.sass'

        _variables.sass

        /*---------- $COLORS -----------*/ // Branding colors $color-brand: #ea83ee $color-secondary: rgb(219, 216, 121) $color-black: rgb(0,0,0) $color-darkblack: #4d4d4d $color-grey: #bfbfbf $color-white: rgb(255,255,255) // Texturas $color-alert: rgb(252,228,207) $color-error: rgb(218,79,73) $color-info: rgb(66,104,221) $color-success: rgb(91,183,91) // Tipografía $basefont: 'Quicksand', sans-serif $basefontsize: 16px $buttoncolor: $color-white $buttonbackgroundcolor: $color-brand

        _tablas.sass

        table tr:hover background-color: $color-secondary

        index.html

        <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="stylesheet" href="css/styles.css"> <title>SASS</title> </head> <body> <h1>Platzi Styguide</h1> <section> <h2>Botones</h2> <input type="submit"> </section> <section> <h2>Tipografía</h2> <p>Lorem, ipsum dolor sit amet consectetur adipisicing elit. Adipisci nam dolor in quidem! Consectetur hic quam, veritatis aut, expedita aliquid beatae asperiores voluptas nobis vitae doloremque, sunt laboriosam id quo?</p> </section> </body> </html>

        Los otros no contienen nada por ahora, entonces sólo es crearlos.

          leonardo rodriguez

          leonardo rodriguez

          student•
          hace 7 años

          Muchas gracias por el aporte 😉

          Johan Marcel Fernandez Castillo

          Johan Marcel Fernandez Castillo

          student•
          hace 7 años

          Super, gracias. 😁

        Hernando Rincón

        Hernando Rincón

        student•
        hace 7 años

        Las metodologías para construir y mantener la arquitectura de CSS están orientadas a la organización, reutilización y mantenimiento del código y de las hojas de estilo CSS dentro de un proyecto de forma escalable, a través de la nomenclatura de clases y la división del código en el desarrollo. Entre las distintas metodologías, se destacan tres, por ser las más ampliamente difundidas.

        OOCSS
        Object Oriented CSS
        Retoma los principios de la programación orientada a objetos para hacer clases comprensibles y reutilizables, evitando la duplicación de código.
        Sitio oficial:
        Autora: Nicole Sullivan, 2008

        SMACSS
        Scalable and Modular Architecture for CSS
        Se enfoca en cinco secciones o categorías de código como cimiento de cualquier proyecto con CSS: Base, Layout, Module, State, Theme.
        Sitio oficial:
        Autor: Jonathan Snook, 2011

        +BEM
        Block, Element, Modifier
        Propende por que los nombres de clases y la organización se orienten a la función que cumplen, para lo cual plantea una sintaxis propia en los nombres de clases, como:

        .block .block--modifier .block__element .block__element--modifier

        Sitio oficial:
        Autor: Soportado por la firma Yandex Tech.

        Este es un buen artículo en Medium sobre la utilización de las tres metodologías.

          Daniel Páez

          Daniel Páez

          student•
          hace 7 años

          Esto que compartiste acà es oro amigo, me hacia falta el entender una manera de estructurar el css

          Harold David Avila Sabogal

          Harold David Avila Sabogal

          student•
          hace 7 años

          Brutal aporte tremenda información muchas gracias

        Jonathan Salazar

        Jonathan Salazar

        student•
        hace 6 años

        Sass nos ofrece su propio sistema de comentarios para tener nuestro código bien documentado, enlace: https://sass-lang.com/documentation/syntax/comments

          Christian Velázquez

          Christian Velázquez

          student•
          hace 6 años

          Gracias.

          Platzi Team

          Platzi Team

          student•
          hace 6 años

          Gran Aporte, Gracias

        Cristian Florez

        Cristian Florez

        student•
        hace 6 años

        Hay algunos repositorios en GitHud Con su sistema de archivos ya creados ejmplo: https://github.com/HugoGiraudel/sass-boilerplate

          Emmanuel García

          Emmanuel García

          student•
          hace 6 años

          Buen ejemplo!

        Mario Alejandro Cortez Salinas

        Mario Alejandro Cortez Salinas

        student•
        hace 7 años

        ¿Existe algún estándar de la organización de las carpetas?

          Juan Castro

          Juan Castro

          teacher•
          hace 7 años

          ¡Claro que si! Solo buscando “sass folder structure best practice” en google encuentras muy buenos resultados: How to structure a Sass project, Aesthetic Sass 1: Architecture and Style Organization, Sass Guidelines, entre muchísimos otros.

          Ahora, los mejores programadores siguen esta guía para organizar y escalar los archivos y carpetas de sus aplicaciones: Scalable file structure for React and other projects. Te la recomiendo por encima de todas las anteriores.

          Harold David Avila Sabogal

          Harold David Avila Sabogal

          student•
          hace 7 años

          gracias

        Jose L. Figueroa

        Jose L. Figueroa

        student•
        hace 5 años

        Así importé mi ejrcicio:

        @import "clean"; @import "variables";

        /* Templates */ @import "templates/header"; @import "templates/blog";

        Sebastian Marin

        Sebastian Marin

        student•
        hace 6 años

        Me parece super la organizacion de los archivos.

        Luis Alejandro Vera Hernandez

        Luis Alejandro Vera Hernandez

        student•
        hace 5 años

        En que diseño se esta basando para poner los colores y fuentes? Hay algun repositorio?

        Ricardo Ayala Montes

        Ricardo Ayala Montes

        student•
        hace 7 años

        Creo que esta muy repetitivo (crear varios archivos iguales, cambiando comentarios). Lo interesante sería que explicará las buenas practicas en la estructura o ya tenerlos hechos.

        Gerardo Nava Pereda

        Gerardo Nava Pereda

        student•
        hace 8 años

        No es mejor usar camelCase en lugar de snape-case?

          Victor Jaramillo

          Victor Jaramillo

          student•
          hace 8 años

          Hola, en mi opinión es cuestion de gustos, ambos son estándares sumamente probados y avalados por muchos años de uso, lo q deberías considerar al momento de usarlos es, en mi opinión cuál se adapta mejor a ti y cómo sacar el máximo provecho de ellos x ejemplo podrías usar uno de ellos para la declaración de funciones y otro para declarar variables, recuerda q al final lo importante es hacer un buen código y q sea entendible 😄

          Victor Alejandro Alvarez Tallada

          Victor Alejandro Alvarez Tallada

          student•
          hace 7 años

          Cada lenguaje tiene su convención de como nombrar cada cosa (funciones, variables, etc) Me parece que en caso de css o sass la convención seria kebab-case.

          Aunque e visto que css es donde “se lo toman mas relajado”, y a veces depende mucho del equipo de trabajo para llegar a un acuerdo cómodo para todos.
          También existen unas metodologías, que ayudan en esto:

          BEM me parecer es la que mas se usa y es sencilla de entender. 😉

        Michael Garcia

        Michael Garcia

        student•
        hace 6 años

        Algo que yo haría digamos para los elementos html, seria ponerlos todos dentro de un archivo llamado _base.scss, usando variables dentro del archivo _variables.scss e importarlo en styles.scss.

        Daniel Páez

        Daniel Páez

        student•
        hace 7 años

        Dejo la captura de mi estructura de archivos

        captura-sass-estructura.png

        Para crear mi estructura me fundamente en los siguientes:

        • Como indica el profe separar la base html del resto
        • Para la parte de "interface" lo subdivi en tantos componentes como pude de manera eficiente
          • Notaras si hiciste el curso de jquery a js de Leonidas que mi sass lo monte sobre Platzi Video, es intencional :) para generar sinergias en mi aprendizaje

        Dejare mi codigo en

        Rabi Leonel Leon Chan

        Rabi Leonel Leon Chan

        student•
        hace 5 años

        ¿Cual es el repositorio del proyecto ?

          Jorge Cruz Perez

          Jorge Cruz Perez

          student•
          hace 5 años

          En el video esta, saludos :): https://github.com/Wakkos/platzi-scss

        Luis Alejandro Vera Hernandez

        Luis Alejandro Vera Hernandez

        student•
        hace 5 años

        Como hizo para agarrar una parte de la variable agregar la palabra color de un solo golpe?

          Luz Sthephany Granados Castro

          Luz Sthephany Granados Castro

          student•
          hace 5 años

          Hola Luis 😊, pues en mi caso que tengo Windows, para poder utilizar el multicursor en Visual presionas el shortcut Ctrl + alt + (flecha arriba o abajo) sin embargo si quieres ver los shortcuts que tienes en tu visual predeterminados, puedes ir a File - preferences - Keyboard shortcuts o Ctrl + K Ctrl + S. Espero te sirva esta info! 🚩📌✔👍

          Luis Alejandro Vera Hernandez

          Luis Alejandro Vera Hernandez

          student•
          hace 5 años

          Gracias Sthepha, revisare la parte de los shortcuts.

        bruno guerra solano

        bruno guerra solano

        student•
        hace 5 años

        buenas comunidad, pregunta si yo envio los datos de este proyecto y coloco un git ingnor para los documentos de sass, imaginemos que una persona descarga mi repositorio puede compilar su sass en le mismo documento css descargado

          Cristofher Jumbo Jimenez

          Cristofher Jumbo Jimenez

          student•
          hace 5 años

          Cundo uno compila Sass, normalmente se suele indicar un archivo donde crear el css. La verdad es que esta interesante la pregunta por que o puede sobreescribir los datos o aniadirlos al archivo css. Tendria que probarlo y decirte hahaah Saludos.

          Jesus Federico David Herrera

          Jesus Federico David Herrera

          student•
          hace 5 años

          Si estas ignorando la carpeta SCSS estas diciendo a GIT que no suba a tu repositorios los archivos SASS. Por ende solo tendras el CSS compilado, en caso de que lo hayas hecho. Para que otra persona pueda compilar tus archivos SASS debes subir esa carpeta. Si envias tu CSS solamente cuando la otra persona compile su SASS sobreescribira lo que la otra persona tenga como archivos SASS. Espero que haya sido entendida mi respuesta.Saludos.

        Esau Rosales

        Esau Rosales

        student•
        hace 6 años

        ¿Como evito que se compilen todos los archivos? Al principio del curso, vi que debia evitar que se compilaran todos los archivos del css excepto el principal, pero no se como hacerlo, se compila aunque utilice “_”

          Roger Carlos Ariel Alba

          Roger Carlos Ariel Alba

          student•
          hace 6 años

          hola!

          Cómo lo estas haciendo?

          Yo lo estoy haciendo desde la terminal y sin ninguna instrucción adicional no compilas los que tienen "_".

          Ahora si estas usando algun software a lo mejor debes revisar los settings.

          Saludos!

          Andres Evaristo Ruiz Gonzalez

          Andres Evaristo Ruiz Gonzalez

          student•
          hace 6 años

          le pone un guion bajo _ al principio del nombre del archivo

        Reynaldo Francisco Moreno Briceño

        Reynaldo Francisco Moreno Briceño

        student•
        hace 5 años

        Una mejor manera de hacerlo es crear dentro de nuestra carpeta sass, una carpeta llamada "componentes", y dentro de ella crear una archivo de nombre "_globales.scss" alli podemos declarar variables, tipografias, mixins, funciones.

        Luego en nuestro archivo "style.scss" que es nuestro principal donde importamos, llamamos de primero a nuestro archivo "globales.scss".

        Asi cargamos de primero todas nuestras variables, mixins, funciones, y tipografias, para evitar errores.

        Jorge Alberto Alvarez Sone

        Jorge Alberto Alvarez Sone

        student•
        hace 5 años

        ¿Saben por qué me bota el error?

        Captura de Pantalla 2020-10-06 a la(s) 18.48.19.png
          Valeria Sánchez Betancourt

          Valeria Sánchez Betancourt

          student•
          hace 5 años

          Creo que es porque falto un punto y coma al final de

          @import: "../components/grids";
          Jorge Alberto Alvarez Sone

          Jorge Alberto Alvarez Sone

          student•
          hace 5 años

          Gracias ya lo había solucionado , fue pequeño error por no revisar bien mi codigo. Gracias de todas maneras :)

        Teresa Carbajal Herrera

        Teresa Carbajal Herrera

        student•
        hace 5 años
        Screen Shot 2020-09-08 at 12.04.46.png
          Luis Felipe Medina Rodriguez

          Luis Felipe Medina Rodriguez

          student•
          hace 5 años

          que pena lo de los colores es una extension? se ve genial

        Eden Rodrigo Verdugo Garcia

        Eden Rodrigo Verdugo Garcia

        student•
        hace 7 años

        como se hace para ponerle el texto color a todas las variables en vs code?

          Enrique Alfaro Cubero

          Enrique Alfaro Cubero

          student•
          hace 7 años

          Amigo con la tecla alt presionada vas clicliando en los lugares donde quieres escribir a la vez