Возникла проблема при встраивании флеш-чата под доктип, равный строгому, с помощью SWFObject
Без доктрины строгого я теряю маржу: автоматическое использование под IE. При использовании строгого доктайпа флеш-чат не загружается вообще. Я прочитал технику встраивания swfobject для строгого doctype, но не могу его получить. Это то, что у меня есть ниже, но оно сжимает вспышку сверху, вместо того, чтобы расширять ее на 100% в высоту
<!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" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Flashchat</title>
<link href="sitecss.asp" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="flash_swf">
<script type="text/javascript">
//<![CDATA[
var so = new SWFObject("swf.swf", "videochat", "100%", "100%", "8", "#FFFFFF");
so.addVariable("rootPath", "http://www.domain.com/flashchat/");
so.addVariable("roomId", "Room");
so.addVariable("app", "chat/videochat.swf");
so.addVariable("uid", "somename");
so.addVariable("skin", "Lead Grey");
so.addParam("wmode", "opaque");
so.write("flash_chat_swf");
// ]]>
</script>
</div>
</body>
</html>
ОК, я использовал javascript, чтобы изменить размер флэш-памяти при загрузке страницы
<script type="text/javascript">
function resize(){
var frame = document.getElementById("flash_swf");
var htmlheight = document.body.parentNode.scrollHeight;
var windowheight = window.innerHeight;
if ( htmlheight < windowheight ) { document.body.style.height = windowheight + "px"; frame.style.height = windowheight + "px"; }
else { document.body.style.height = htmlheight + "px"; frame.style.height = htmlheight + "px"; }
}
</script>
<body onload="resize()" onresize="resize()">
Но у меня сверху есть меню высотой 40 пикселей. Поэтому я должен был установить маржу для поля DIV: 40px 0 0 0 ;. Теперь вспышка отключается на 40 пикселей слишком коротко. Как установить htmlheight и windowheight в javascript, чтобы оно было на 40 пикселей меньше (-40px)?