I probably wouldn't apply the padding on the outer div. I'd then apply padding/margin to those elements within the div that required them.
HTML
Code:
<div>
<img src="image.gif" alt="">
<h1>Heading</h1>
<p>Some paragraph</p>
</div>
CSS
Code:
div {
background-color: #CCC;
width: 298px;
border: dashed 1px #000;
}
img {
width: 298px;
height: 50px;
}
h1, p {
margin: 10px;
}
That's just a simplified version of what you're asking but should be adaptable. If the image is only going to be decorative though then I'd use JimmyPaddy's suggestion and use the image as a background image and then use padding within the div to position other elements accordingly.
If the content inside the div is complicated then I'd also consider using another div around the content and applying the padding to that instead.
As you can see there's a number of options
Bookmarks