CSS itself will not give an error, however CSS which has an error in its syntax will not render correctly. The browser may not be able to understand what is meant at a given point, and therefore not be able to format the page correctly.
There’s also a difference in CSS being syntactically correct, where everything is properly enclosed and lines terminated, and it being standards compliant according to the W3C specification.
EDIT : (example for syntax correctness and standards compliance)
The following is an example of syntactically correct CSS, which won’t fail validation on the W3C CSS Validator:
p.my-class {
color : red;
-moz-border-radius : 3px;
}
Whilst this is technically valid CSS, according to the vendor specific extensions section of the CSS 2.1 syntax, they should be avoided. It’s the initial dash or underscore which lets them be valid.