SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
HTML y CSS dietéticos
+
David Grilli
@djGrill
Agenda
temas = ['HAML', 'SASS']
temas.each do |tema|
print 'Introducción a ', tema
print ‘Contenido estático en ', tema
print ‘Contenido dinámico en ', tema
Introducción a HAML
<h1>Joincic 5</h1>
<p>
Texto en latín cuyo significado es un
misterio para algunos de nosotros
</p>
<% código ruby %>
Introducción a HAML
> HTML Abstraction Markup Language
> DRY
> Identación
Contenido estático en HAML
%h1 elementos HTML
.clase clases CSS
#id IDs
{:atr} atributos
%h1 Joincic 5
%p
Texto en latín cuyo significado es un
misterio para algunos de nosotros
Contenido estático en HAML
!!! Strict
%html
%head
%body
%h1 Hola, mundo!
Contenido estático en HAML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head></head>
<body>
<h1>Hola, mundo!</h1>
</body>
</html>
Contenido estático en HAML
!!! Strict
%html
%head
%body
%h1 Frutas famosas
%div
%ul
%li Manzana
%li Mora
%li Ninja
Contenido estático en HAML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head></head>
<body>
<h1>Frutas famosas</h1>
<div>
<ul>
<li>Manzana</li>
<li>Mora</li>
<li>Ninja</li>
</ul>
</div>
</body>
</html>
Contenido estático en HAML
!!! Strict
%html
%head
%body
%h1 Frutas famosas
%div.list#lista_1
%ul
%li Manzana
%li Mora
%li Ninja
Contenido estático en HAML
!!! Strict
%html
%head
%body
%h1 Frutas famosas
.list#lista_1
%ul
%li Manzana
%li Mora
%li Ninja
Contenido estático en HAML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head></head>
<body>
<h1>Frutas famosas</h1>
<div class="list" id="lista_1">
<ul>
<li>Manzana</li>
<li>Mora</li>
<li>Ninja</li>
</ul>
</div>
</body>
</html>
Contenido estático en HAML
!!! Strict
%html
%head
%body
%h1 Frutas famosas
.list#lista_1
%ul
%li
%a{:href => "http://apple.com"}
Manzana
%li Mora
%li Ninja
Contenido estático en HAML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head></head>
<body>
<h1>Frutas famosas</h1>
<div class="list" id="lista_1">
<ul>
<li><a href="http://apple.com">Manzana</a></li>
<li>Mora</li>
<li>Ninja</li>
</ul>
</div>
</body>
</html>
Contenido estático en HAML
Contenido dinámico en HAML
= out lógica con output
- logic lógica sin output
-#com comentarios
- @clase = "principal"
!!! Strict
%html
%head
%body
%h1 Frutas famosas
%ul
%li
%a{:href => "http://apple.com", :class => @clase}
Manzana
%li Mora
%li Ninja
Contenido dinámico en HAML
- @clase = "principal"
!!! Strict
%html
%head
%body
%h1 Frutas famosas
%ul
%li
%a{:href => "http://apple.com", :class => @clase}
Manzana
= @clase
%li Mora
%li Ninja
Contenido dinámico en HAML
Introducción a SASS
> Syntactically Awesome StyleSheets
> CSS estático a partir de una plantilla dinámica
> Identación
Contenido estático en SASS
h1 elementos HTML
.clase clases CSS
#id IDs
:atr atributos
body
h1
:blackground-color #f5f6f7
a
:color #444
Contenido estático en SASS
body h1 {
blackground-color: #f5f6f7; }
body h1 a {
color: #444; }
Contenido estático en SASS
body
h1
:blackground-color #f5f6f7
a.primero
:color #444
a #id_1
:color #777
Contenido estático en SASS
body h1 {
blackground-color: #f5f6f7; }
body h1 a.primero {
color: #444; }
body h1 a #id_1 {
color: #777; }
Contenido estático en SASS
Contenido dinámico en SASS
!var variables
+out comportamiento con output
=comp comportamiento sin output
!naranja = #ff7f00
body
h1
:blackground-color = !naranja
a
:color #444
Contenido dinámico en SASS
body h1 {
blackground-color: #ff7f00; }
body h1 a {
color: #444; }
Contenido dinámico en SASS
=texto
:margin-bottom 0.7em
:color #abc
body
h1
:blackground-color #f5f6f7
+texto
Contenido dinámico en SASS
body h1 {
blackground-color: #f5f6f7;
margin-bottom: 0.7em;
color: #abc; }
Contenido dinámico en SASS
http://haml.info
http://sass-lang.com
http://peepcode.com
Más información Contacto
http://twitter.com/djGrill
http://davidgrilli.com
HTML y CSS dietéticos
+
David Grilli
@djGrill

Más contenido relacionado

Destacado

Pre-procesadores CSS. SASS
Pre-procesadores CSS. SASSPre-procesadores CSS. SASS
Pre-procesadores CSS. SASSMarionaCruz
 
Uso de las Infraestructuras de Datos Espaciales en Astronomía
Uso de las Infraestructuras de Datos Espaciales en AstronomíaUso de las Infraestructuras de Datos Espaciales en Astronomía
Uso de las Infraestructuras de Datos Espaciales en AstronomíaJose Gomez Castaño
 
Curso TDD Ruby on Rails #08: Buenas prácticas
Curso TDD Ruby on Rails #08: Buenas prácticasCurso TDD Ruby on Rails #08: Buenas prácticas
Curso TDD Ruby on Rails #08: Buenas prácticasAlberto Perdomo
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on RailsASPgems
 
Curso de Ruby on Rails para el Master de Deusto. Día 2
Curso de Ruby on Rails para el Master de Deusto. Día 2Curso de Ruby on Rails para el Master de Deusto. Día 2
Curso de Ruby on Rails para el Master de Deusto. Día 2estialvarez
 
1.Introduccion (diseño web con CSS)
1.Introduccion (diseño web con CSS)1.Introduccion (diseño web con CSS)
1.Introduccion (diseño web con CSS)larasaregune
 
0.Indice de Contenidos (diseño web con CSS)
0.Indice de Contenidos (diseño web con CSS)0.Indice de Contenidos (diseño web con CSS)
0.Indice de Contenidos (diseño web con CSS)larasaregune
 
3.Propiedades (diseño con CSS)
3.Propiedades (diseño con CSS)3.Propiedades (diseño con CSS)
3.Propiedades (diseño con CSS)larasaregune
 
El posicionamiento explicado en 9 pasos
El posicionamiento explicado en 9 pasosEl posicionamiento explicado en 9 pasos
El posicionamiento explicado en 9 pasosYadith Gomez Nolasco
 
4.Estructura (diseño con CSS)
4.Estructura (diseño con CSS)4.Estructura (diseño con CSS)
4.Estructura (diseño con CSS)larasaregune
 
1.Introduccion (diseño con CSS)
1.Introduccion (diseño con CSS)1.Introduccion (diseño con CSS)
1.Introduccion (diseño con CSS)larasaregune
 
0.Indice de Contenidos
0.Indice de Contenidos0.Indice de Contenidos
0.Indice de Contenidoslarasaregune
 
2.Sintaxis (diseño con CSS)
2.Sintaxis (diseño con CSS)2.Sintaxis (diseño con CSS)
2.Sintaxis (diseño con CSS)larasaregune
 
Buenas Prácticas de CSS
Buenas Prácticas de CSSBuenas Prácticas de CSS
Buenas Prácticas de CSSJavier España
 

Destacado (20)

Pre-procesadores CSS. SASS
Pre-procesadores CSS. SASSPre-procesadores CSS. SASS
Pre-procesadores CSS. SASS
 
Uso de las Infraestructuras de Datos Espaciales en Astronomía
Uso de las Infraestructuras de Datos Espaciales en AstronomíaUso de las Infraestructuras de Datos Espaciales en Astronomía
Uso de las Infraestructuras de Datos Espaciales en Astronomía
 
Ruby intro
Ruby introRuby intro
Ruby intro
 
Lenguaje de programación Ruby
Lenguaje de programación RubyLenguaje de programación Ruby
Lenguaje de programación Ruby
 
Sass y compass
Sass y compassSass y compass
Sass y compass
 
Curso TDD Ruby on Rails #08: Buenas prácticas
Curso TDD Ruby on Rails #08: Buenas prácticasCurso TDD Ruby on Rails #08: Buenas prácticas
Curso TDD Ruby on Rails #08: Buenas prácticas
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on Rails
 
Curso de Ruby on Rails para el Master de Deusto. Día 2
Curso de Ruby on Rails para el Master de Deusto. Día 2Curso de Ruby on Rails para el Master de Deusto. Día 2
Curso de Ruby on Rails para el Master de Deusto. Día 2
 
Taller ruby
Taller rubyTaller ruby
Taller ruby
 
2 Introducción al lenguaje Ruby
2 Introducción al lenguaje Ruby2 Introducción al lenguaje Ruby
2 Introducción al lenguaje Ruby
 
Ruby Facil
Ruby FacilRuby Facil
Ruby Facil
 
1.Introduccion (diseño web con CSS)
1.Introduccion (diseño web con CSS)1.Introduccion (diseño web con CSS)
1.Introduccion (diseño web con CSS)
 
0.Indice de Contenidos (diseño web con CSS)
0.Indice de Contenidos (diseño web con CSS)0.Indice de Contenidos (diseño web con CSS)
0.Indice de Contenidos (diseño web con CSS)
 
3.Propiedades (diseño con CSS)
3.Propiedades (diseño con CSS)3.Propiedades (diseño con CSS)
3.Propiedades (diseño con CSS)
 
El posicionamiento explicado en 9 pasos
El posicionamiento explicado en 9 pasosEl posicionamiento explicado en 9 pasos
El posicionamiento explicado en 9 pasos
 
4.Estructura (diseño con CSS)
4.Estructura (diseño con CSS)4.Estructura (diseño con CSS)
4.Estructura (diseño con CSS)
 
1.Introduccion (diseño con CSS)
1.Introduccion (diseño con CSS)1.Introduccion (diseño con CSS)
1.Introduccion (diseño con CSS)
 
0.Indice de Contenidos
0.Indice de Contenidos0.Indice de Contenidos
0.Indice de Contenidos
 
2.Sintaxis (diseño con CSS)
2.Sintaxis (diseño con CSS)2.Sintaxis (diseño con CSS)
2.Sintaxis (diseño con CSS)
 
Buenas Prácticas de CSS
Buenas Prácticas de CSSBuenas Prácticas de CSS
Buenas Prácticas de CSS
 

Similar a Haml y Sass: HTML y CSS dietéticos

Similar a Haml y Sass: HTML y CSS dietéticos (20)

Desarrollo web inteligente
Desarrollo web inteligenteDesarrollo web inteligente
Desarrollo web inteligente
 
HTML5 101 - Drupaleada jun12
HTML5 101 - Drupaleada jun12HTML5 101 - Drupaleada jun12
HTML5 101 - Drupaleada jun12
 
HTML ¿qué es y para que sirve?
HTML ¿qué es y para que sirve?HTML ¿qué es y para que sirve?
HTML ¿qué es y para que sirve?
 
Seo para prestashop V.2
Seo para prestashop V.2Seo para prestashop V.2
Seo para prestashop V.2
 
Curso de HTML5
Curso de HTML5Curso de HTML5
Curso de HTML5
 
Html guia 1
Html guia 1 Html guia 1
Html guia 1
 
Curso HTML y CSS, parte 1
Curso HTML y CSS, parte 1Curso HTML y CSS, parte 1
Curso HTML y CSS, parte 1
 
Clase 6 twig
Clase 6 twigClase 6 twig
Clase 6 twig
 
HTML y CSS
HTML y CSSHTML y CSS
HTML y CSS
 
01. Creando documentos HTML5
01. Creando documentos HTML501. Creando documentos HTML5
01. Creando documentos HTML5
 
Apuntes de HTML
Apuntes de HTMLApuntes de HTML
Apuntes de HTML
 
Introducción a CSS en XHTML
Introducción a CSS en XHTMLIntroducción a CSS en XHTML
Introducción a CSS en XHTML
 
Introduccion a css
Introduccion a cssIntroduccion a css
Introduccion a css
 
Taller de Html
Taller de HtmlTaller de Html
Taller de Html
 
Estructura semantica Html5.pptx
Estructura semantica Html5.pptxEstructura semantica Html5.pptx
Estructura semantica Html5.pptx
 
Guía básica para pegarle al xhtml (Primera parte)
Guía básica para pegarle al xhtml (Primera parte)Guía básica para pegarle al xhtml (Primera parte)
Guía básica para pegarle al xhtml (Primera parte)
 
Prácticas de html
Prácticas de htmlPrácticas de html
Prácticas de html
 
Clase 1 - Introducción HTML.pptx
Clase 1 - Introducción HTML.pptxClase 1 - Introducción HTML.pptx
Clase 1 - Introducción HTML.pptx
 
Introducción a CSS Parte - 1
Introducción a CSS Parte - 1Introducción a CSS Parte - 1
Introducción a CSS Parte - 1
 
Semana 3 Maquetación CSS
Semana 3   Maquetación CSSSemana 3   Maquetación CSS
Semana 3 Maquetación CSS
 

Último

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 

Último (11)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 

Haml y Sass: HTML y CSS dietéticos