CSS-Stile werden bei Verwendung von DOCTYPE nicht ordnungsgemäß angewendet

1) CSS-Stile werden auf meine HTML-Seite nicht richtig angewendet, wenn ich eine bestimmte HTML-Version wie HTML5, HTML4.1 strict usw. hinzufüge. Wenn ich alle DOCTYPE-Anweisungen entferne, funktioniert dies einwandfrei.

Mein HTML-Code (ohne DOCTYPE richtig anzeigen):

<code><html> 
<head>
<title>Test</title>
</head>
<body style="background-color:green;height:100%;width:100%;">
<div>My Test page</div>
<div style="background-color:red;height:100%;width:10%;"></div>
</body>
</html>
</code>

Mein HTML-Code (Hintergrundfarbe Rot wird bei DOCTYPE nicht angewendet):

<code><!DOCTYPE html>
<html> 
<head>
<title>Test</title>
</head>
<body style="background-color:green;height:100%;width:100%;">
<div>My Test page</div>
<div style="background-color:red;height:100%;width:10%;"></div>
</body>
</html>
</code>

Auch habe ich versucht, anstelle von HTML5, XHTML 1.0 streng,

<code> <!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"> 
</code>

und,

<code>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
</code>

Funktioniert aber keiner. So fügen Sie die Version richtig hinzu.

2) Auch welche ist jetzt die beste Version. HTML5 oder HTML4.01 oder HTML 4.01 mit XHTML?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage