Como escribir mucho menos CSS +

Todos sabemos el tedio que resulta cuando uno tiene que trabajar con hojas grandes de estilo en CSS, todos queremos una solución mas simple y mas estructurada, y esto es posible con la gema para ruby less, para poder instalarla deben tener rubygems y ejecutar el comando

sudo gem install less

Less nos permite transformar archivos .less a CSS y es posible realizar herencia, operaciones o tener variables, por ejempo este CSS

#header {
  color: #4D926F;
}
h2 {
  color: #4D926F;
}

se convierte en less en esto

@brand_color: #4D926F;
#header {
  color: @brand_color;
}
h2 {
  color: @brand_color;
}

O si tenemos que acceder a las largas rutas de css

#header {
  color: red;
}
#header a {
  font-weight: bold;
  text-decoration: none;
}

se convierte en esto

#header {
  color: red;
  a {
    font-weight: bold;
    text-decoration: none;
  }
}

Tambien podemos tener herencia o (mixins) como en Ruby, por ejemplo este CSS

#header {
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}
#footer {
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}

se convierte en

.rounded_corners {
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
}
#header {
  .rounded_corners;
}
#footer {
  .rounded_corners;
}

Tambien se pueden realizar operaciones lo cual nos permitiria convertir este CSS

#header {
  color: #333;
  border-left: 1px;
  border-right: 2px;
}
#footer {
  color: #222;
}

en esto

@the-border: 1px;
@base-color: #111;
#header {
  color: @base-color * 3;
  border-left: @the-border;
  border-right: @the-border * 2;
}
#footer {
  color: @base-color + #111;
}

Y finalmente para que se genere el archivo de CSS lo que se hace es ejecutar el siguiente comando

lessc style.less

Para poder tener mas información visiten su sitio web http://lesscss.org/

2 comentarios en “Como escribir mucho menos CSS”

  1. Muy buen consejo, me gusta la forma que genera dinamicamente la css, mas deberia de integrarse mucho mas con rails.

    Gracias por el post.

  2. Carlos es muy simple, existe varios plugins que lo integra directamente con Rails. Ademas que despues de haber probado SASS, realmente prefiero less la sintaxis es casi la misma de css, es mas natural y no hay problemas en integrarlo con HAML. Te envio dos vinculos de esto y espero poder publicar un articulo pronto sobre Sinatra.
    http://www.railslodge.com/plugins/1491-less-rails
    http://github.com/augustl/less-for-rails/tree/master

Su comentario