To prevent text from overlapping certain areas of an image, you can use the following technique: Set the image as a background on your <p>
element and then float transparent containers over the background image in the desired shapes.
<p>
<span id="block1"></span>
<span id="block2"></span>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. ...
</p>
Apply the following CSS styles:
p {
background: url(your-image.png) no-repeat 100% 0;
}
#block1 {
float: right;
width: 100px;
height: 100px;
}
#block2 {
clear: both;
float: right;
width: 200px;
height: 50px;
}
Keep in mind that this method requires manual adjustments similar to using paragraph classes. You can view a demonstration here.