improved version (see description)

improved the positioning. before it was getting messed up if you put an
image in and then put in text. now it doesn't matter what you put in,
it works. allow user to specify content through data attribute as well.
still need to make it work for multiple instances.