For some reason space is added after my equation when I colour it. This does not happen if the colour is added to text.
Is there a simple way to prevent this from happening, like a global setting (I am not interested in manually adjusting the space with \vspace{-1cm})? Perhaps there is a better way to colour my equation (another package, another command, etc), or in other words, am I doing something wrong?

\documentclass[12pt]{standalone}
\usepackage{amsmath}
\usepackage{color}
\begin{document}
\begin{minipage}{4cm}
\begin{equation*}
a = b + c
\end{equation*}
\begin{align*}
a - b &= c\\
a-c & b
\end{align*}
\end{minipage}
\vline
\begin{minipage}{4cm}
\begin{equation*}
\color{blue} a = b + c
\end{equation*}
\begin{align*}
a - b &= c\\
a-c & b
\end{align*}
\end{minipage}
\end{document}
For reference, the closest question I found to this one doesn't seem to solve my problem, ie, adding \fboxsep0pt to my preamble did not change the output.
EDIT
Kurt's comment solves part of the problem, but it doesn't work when using for example align (it gives an error):
\begin{align*}
{\color{blue} a - b &= c}\\
a-c &= b
\end{align*}
If I try to fix this using the command twice leaving the & outside, the spacing around = is wrong:
\begin{align*}
{\color{blue} a - b} &{\color{blue}= c}\\
a-c &= b
\end{align*}

{\color{blue}a = b + c}there is no additional space ... – Kurt Jan 13 at 3:40{\color{blue}{}= c}. – Peter Grill Jan 13 at 3:59color. Two math environments should not be placed 'back to back' like this- you should usegather*. When you usegather*, the spacing is the same in both – cmhughes Jan 13 at 4:45\colorinside{}. – hpesoj626 Jan 13 at 5:43align*as the inner environment; I didn't even know that this is possible. Withalignedas the inner environment, everything works nicely, Vivi. – Hendrik Vogt Jan 13 at 8:39