I made an example for you. http://jsfiddle.net/kb3Kf/2/
The main thing that was missing was that you gave the text an Absolute position but didn't give the wrapper a Relative one, like so:
.img-overlay
{
position: relative;
}
It's really simple, you can take it to many directions. Tell me if that's what you wanted.