So, mal schauen.
<html>
Also: hier fehlt ne Deklaration. Wenn du XHTML Strict verwenden willst (wozu ich rate), könnte die so lauten:
<?xml version="1.0" encoding="UTF-8"?>
<!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">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Ist zwar nicht falsch (bis auf den fehlenden Schrägstrich), aber du musst dir sicher sein, dass im meta-Tag, in der XML-Deklaration und im HTTP-Header das Gleiche steht. Zwar ist eindeutig definiert, dass die HTTP-Header-Deklaration Vorrang hat, aber irgendein Browser hält sich nicht daran. Empfohlen ist für den MIME-Typ application/xhtml+xml, aber text/html ist auch erlaubt. Wenn du es ganz korrekt machen willst, kannst du Content Negotiation verwenden, d.h. du weist den Webserver an, Klienten, die application/xhtml+xml akzeptieren, das Dokument als application/xhtml+xml zu senden und dem anderen als text/html. Ähnliches gilt für die Kodierung: Die muss überall, wo sie angegeben wird, übereinstimmen und natürlich muss der Text auch entsprechend kodiert sein.
<meta name="robots" content="index,follow">
<meta name="description" content="Mein Online-Film">
<meta name="keywords" content="Homepage, Steffi">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="expires" content="0">
Da fehlen auch überall die Schrägstriche am Ende. Tags müssen in XHTML immer geschlossen werden: <meta/>.
<!--
Das könnte kritisch werden, denn dadurch wird der Inhalt zu einem normalen Kommentar, der ignoriert werden muss, wenn der Klient sich standardgemäß verhält. Besser: <[CDATA[. Noch besser: Auslagern in eine externe Datei.
document.write("<style type='text/css'>#hintergrund {visibility:hidden;}</style>");
< und > müssen in XHTML escaped werden, wenn sie nicht in einem CDATA-Block stehen.
<body id="hintergrund" style="margin-left:0px; margin-top:0px; margin-right:0px; margin-bottom:0px;">
<div style="position:absolute; top:50%; height:256px; margin-top:-128px; left: 50%; width: 750px; margin-left: -375px;">
Das ist zwar auch nicht falsch, es empfiehlt sich aber eine Auslagerung in externe CSS-Dateien, um Struktur und Darstellung besser zu trennen.
<embed src="steffi.swf" quality="high" bgcolor="#000000" width="750" height="256" name="steffi" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
So weit ich weiß, gehört embed nicht zum Standard, aber object müsste in modernen Browsern auch funktionieren.
Wenn du die Fehler ausgebessert hast, kannst du die Seite validieren. Der W3-Validator wird von manchen Leuten nicht empfohlen, da er wohl keinen echten XML-Parser verwendet und das Dokument nicht gegen ein Schema, sondern gegen eine Dokumenttypdefinition validiert. Besser ist für XHTML ein Schema-Validator.
Gruß
Philipp