
I've learned the fear the <div> container. Let me show you why using a <div> container for "non-specific" blocks of text won't work.
<div> <head>Level 1</head> <p>Paragraph 1.</p>
<div>Block o' text.</div>
<p> Paragraph 2.</p>
</div>
Improperly nested tags will never validate. You can't have a bare string inside the <head> tag like that, and <head> isn't a child of <div>, so that won't work either. After correcting those errors, it validates fine.
The above will not validate. Once you go one deeper in a nest, you cannot come back up just one level. You have to close the whole nesting.
Nope, this is completely untrue.
The above would work if changed to:
<div> <head>Level 1</head> <p>Paragraph 1.</p>
<div>Block o' text.</div> </div>
<div>
<p> Paragraph 2.</p>
</div>
You're still producing invalid markup. Try something like this: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head><title>Level 1</title></head> <body> <p>Level 1</p> <div> <p>Paragraph 1.</p> <div>Block o' text.</div> <p> Paragraph 2.</p> </div> </body> </html> David A. Desrosiers desrod@gnu-designs.com http://gnu-designs.com