【发布时间】:2012-08-01 00:25:04
【问题描述】:
我会说我很擅长 HTML 和 CSS,当我开始接触 JavaScript 时,我感到很挣扎;我可以理解其中一些,但我无法为我的生活写下它!我正在努力学习,无论如何;我已经将这个 jQuery 脚本与目标放在一个 div 垂直居中在相对定位的顶部 div 和绝对定位的底部 div 之间。这对我来说行不通,哈哈。
因为我正在尝试学习如何使用 jQuery 并创建自己的脚本,所以我想尝试让它工作。但是,如果有更好的方法来实现我的目标,我也将非常感谢您以这种方式提供的意见!
<script type="text/javascript">
$(document).ready(function() {
$(window).ready(function(){
vertical_height()
});
$(window).resize(function(){
vertical_height()
});
function vertical_height(){
var doc_height = $(document).height();
var head_height = $(".headcontent").height();
var mid_height = $(".midcontent").height();
var foot_height = $(".footer").height();
var pos_height = Math.round(head_height+foot_height);
var neg_height = Math.round((head_height-foot_height)/2);
var fin_height = Math.round(doc_height-(pos_height-neg_height));
$('.midcontent').css({
"marginTop","-"+fin_height+"px",
"marginBottom","-"+fin_height+"px"
}
}
});
</script>
.headcontent 是顶部 div。
.midcontent 是我想要居中的中间 div。
.footer 是底部 div。
【问题讨论】:
-
它已经工作了吗?如果是,请移至codereview.stackexchange.com,如果不是,请描述错误。
-
顺便说一句:您可以直接将该函数添加为事件侦听器:
$(document).ready(vertical_height); $(window).resize(vertical_height);。此外,没有$(window).ready- 删除它 -
谢谢,这是我的想法,您可以了解我正在尝试做什么! jsfiddle.net/mattroberts33/nBUnt/1
标签: javascript jquery html center vertical-alignment