try:
Code:
<div class="image"><img alt="" src="../Images/test.jpg" /><span>your caption</span></div>
CSS
div.image {margin:2em auto; width:80%; text-align:center; page-break-inside:avoid}
div.image span {display:block; font-size:.6em; font-family:serif}
div.image img {max-width:400px} //* the actual width of your image in pixels *//
See if that works.
edit: You can even try adding the "max-width" to the div.image and set it to the smallest display screen you find convenient (in portrait). Then the image "shouldn't" overflow to the next page.