Color text is done by embedded escape characters in the text. This makes it really hard to visualize when typing, but it's possible.
The sequence starts with "Ctrl-v ESC [", that is type Ctrl-v followed by the Escape key (which will appear as ^[ ) followed by left bracket. You then specify one or two numbers in the form:
ab
where a = 3 to define the foreground (text) color and a=4 to set the background color, and b is one of the following:
0 = black
1 = red
2 = green
3 = yellow
4 = blue
5 = magenta
6 = cyan
7 = white
So 30;42 would print red text (31) on a green background (42), and 36;40 would print cyan text on a black background, and so on.
You then print 'm' followed by the text. You should follow the string by ^[[0m to reset the colors back to default (otherwise the same color scheme would continue to be used for all subsequent text.
So, as an example, you could:
echo "^[[31;43mWarning^[[0m"
(remembering that ^[ is entered as 'Ctrl-v ESC')
This would print 'Warning' in red text on a yellow background.
(There is one further set of attributes you can use to print bold, underlined or flashing text - just try prepending a single digit before the colors to see what effects you can get)
Just bear in mind that different shells and different terminals may interpret the codes differently (or have a different set altogether - the above is based on the ANSI standard, but VT100 works differently.