Hola Hana!
• There are some general rules, but they can not be applied to every single adjective.
' The adjective is used after the noun to differentiate it from other ones.
' The adjective is used before the noun to highlight some of its features.
• Let's look at these examples:
Los niños simpáticos recibieron premios
Los simpáticos niños recibieron premios
In the first sentence, we are differentiating between nice kids and not so nice kids, so what we meant is that only the nice ones got some presents. In the second one, all the children got presents, and we are also adding a comment: they were nice kids.
• Other things to consider:
' Colors, shapes, nationalities, states and types are used only after the noun.
' Adjectives used to determine the position in a sequence are used before the noun: primero, segundo, siguiente, nuevo. (there are a few exceptions here too).
' Bueno, malo, grande and pequeño are always before the noun and can be shortened to "buen", "mal" and "gran"
• One last point I want to make is sometimes deciding whether to put the adjective before or after the noun can change the meaning of the phrase:
Un compañero viejo = an old companion (an old companion, in age)
Un viejo compañero = an old companion (you have been companions for a long time)
Una gran mujer = a big woman (in status, seen by society as a really good person)
Una mujer grande = a big woman (in size)
Un pobre hombre = a pityful/miserable man (poor man!)
Un hombre pobre = a poor man
* This is a very tricky thing to explain, even for native Spanish speakers, since it is almost natural for us and we do not even think about it. I hope it can help you ^^
Here is a link with more information:
http://spanish.about.com/cs/grammar/a/whereadjective.htm