As Feherke pointed out in HTML 5, a div inside an <a> tag is perfectly valid. Also using Validation ensures that it will look and work the same across compliant browsers. Validation is not just there for kicks. Its important, as it makes sure the reason it does not work is not related to the way you are laying out your HTML. Bur rather the way the browser interprets it. If its correctly validated it means you are not at fault.
Its bad practice to ignore it.
This works and validates correctly with an HTML 5 doctype. It is missing the encoding meta tag though.
Code:
<!DOCTYPE html>
<html>
<head><title>test2</title>
<style type="text/css">
div.landscape
{
width:600px;
height:300px;
background-image:url("townkiller.jpg");
background-repeat:no-repeat;
}
div.landscape a
{
display:block;
overflow:hidden;
height:100%;
}
div.landscape div.paragraph
{
width:330px;
height:230px;
float:right;
margin:10px;
text-align:justify;
padding:10px;
}
</style>
</head>
<body>
<div class="landscape">
<a href="#link">
<div class="paragraph">
<div class="feattext">
<p>
On Saturday 18th July 1964 a severe flood hit a large area of Lancashire and resulted in severe damage to property.
</p>
<p>
This article features a series of newspaper articles telling the story of the flood and it's aftermath.
</p>
</div>
</div>
</a>
</div>
</body>
</html>
With that said, as an extra suggestion, if you are going to have an image be part of the content, it should be part of the content, and not the background. Unless you have a pressing reason to make the image there part of the background image, it would be much easier to manage if it were an actual image tag. It would also make it easier to have the text on the right side, if there is something there in the left actually taking up the space.
----------------------------------
Phil AKA Vacunita
----------------------------------
Ignorance is not necessarily Bliss, case in point:
Unknown has caused an Unknown Error on Unknown and must be shutdown to prevent damage to Unknown.
Web & Tech