与往常一样,我很难解释自己,所以我花时间创建了一个小演示: http ://dl.dropbox.com/u/25916579/drawing.svg
开始似乎很容易,但和往常一样,我在这里不知所措。我想javascript可能是一个解决方案,但我不在乎。
我确实找到了适用于 chrome 和 firefox 的解决方案,但不适用于 IE。
注意:我不关心对旧浏览器的支持。
这是我解决问题的尝试:http: //jsfiddle.net/fLGUh/
如前所述,我确实得到了一个使用 chrome 和 firefox 的工作解决方案,但它并不完全完美。
在 IE 中查看此内容时,您会注意到底部的 #fill 没有按预期运行。
如果您知道不涉及 javascript 的面糊方式,请告诉我。
最好的祝福。
编辑:只是为了好玩,我对 javascript 解决方案的外观进行了一些研究,显然它并不像我最初想象的那么容易,所以如果你想搞砸它,你会很受欢迎。
edit2:在这一点上,我认为我不得不接受 javascript 解决方案可能是唯一的出路。实在是太糟糕了。我对javascript很烂...
编辑3:已经提出了一个有效的js解决方案,并指出了我的一个主要缺陷。等我有时间我会回来完成这个。在那之前,谢谢大家和最好的问候。
edit4:这正是我想要的:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(
function() {
var wh = $(window).height();
var m = (wh-540)/2;
if(wh > 540) {
$('#content').css('margin-top', m).css('margin-bottom', m);
}
}
);
</script>
<style type="text/css">
html, body {
margin: 0px;
padding: 0px;
background-color: black
}
#content {
width: 960px;
min-height: 540px;
background-color: #eeeeee;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
<div id="content">test</div>
</body>
</html>