Sass Blog
Page 9 of 9
-
Sass 3.3 is Released
Posted 8 March 2014 by Natalie Weizenbaum
After ironing out a bunch of bugs in numerous release candidates, we’re finally ready to release Sass 3.3.0, codename Maptastic Maple, for public consumption. This release has a lot of exciting new features that you can read about in full in the changelog, but there are three that I want to draw your attention to in particular.
Maps in SassScriptMaps in SassScript permalink
As language designers, most of our job is to listen to feedback from users and act upon it. This is tricker than it sounds: users are very good at knowing the precise thing that they want to accomplish, but they tend not to have a sense of how that fits into the big picture. So we take a large volume of user requests, try to distill the core needs that aren’t being met, and see if we can come up with features that hit as many of those as possible as simply as possible.
SassScript maps are a great example of this. We had a…
-
A Change in Plans for Sass 3.3
Posted 20 December 2013 by Natalie Weizenbaum
This was originally published as a gist.
Sass 3.3 is coming soon, and along with it several major new features. It supports source maps, SassScript maps, and the use of
&
in SassScript. In preparation for its release, we’ve put out a couple of release candidates to be sure that everything was set and ready to go. Unfortunately, it wasn’t.Release candidates often turn up small bugs and inconsistencies in new features, but it’s rare that they find anything truly damning. In this case, though, several users noticed an issue with using
&
in SassScript that rendered a sizable chunk of our plan for that section of 3.3 unworkable. It’s not a fatal issue, and we think we have a good plan for dealing with it (I’ll get to that in a bit), but it is a problem.The BackgroundThe Background permalink
To understand what’s wrong, first you need to understand the reason we decided to make
&
accessible to SassScript in the first place. One thing users… -
How @extend Works
Posted 23 November 2013 by Natalie Weizenbaum
This was originally published as a gist.
Aaron Leung is working on libsass and was wondering how
@extend
is implemented in the Ruby implementation of Sass. Rather than just tell him, I thought I’d write up a public document about it so anyone who’s porting Sass or is just curious about how it works can see.Note that this explanation is simplified in numerous ways. It’s intended to explain the most complex parts of a basic correct
@extend
transformation, but it leaves out numerous details that will be important if full Sass compatibility is desired. This should be considered an explication of the groundwork for@extend
, upon which full support can be built. For a complete understanding of@extend
, there’s no substitute for consulting the Ruby Sass code and its tests.This document assumes familiarity with the selector terminology defined in the Selectors Level 4 spec. Throughout the document, selectors will be treated interchangeably with lists or sets of their components. For example, a complex selector…