The biggest con of abstractions is that they tend to be "leaky." For instance, it's really easy to over-declare styles when using mixins.

Even if preprocessors allow you abide by DRY, the CSS they generate may not stop the browser from repeating itself unnecessarily.

In the same way that you can do some real damage by learning jQuery without knowing the underlying JavaScript, it's important to know how CSS selectors work [right to left] and how styles are inherited in the cascade. Without these fundamentals, preprocessors can lead to really bad stylesheets.