我正在尝试使用 Javascript 将 div 垂直居中。因为文本会发生变化,所以我不能使用固定的高度。
我想做这个without Jquery.
#box2 {
width: 100%;
height: 100%;
position:relative;
background-color: orange;
}
#informationBox {
padding: 0.5em;
background-color: #fff;
border-radius: 12pt;
border: solid black 3pt;
max-width: 683px;
margin: 0 auto;
text-align: center;
}
JavaScript:
var container = document.getElementById("#box2");
var inner = document.getElementById("#informationBox");
var inHeight = inner.offsetHeight;
container.style.height=(window.innerHeight);
container.style.width=window.innerWidth;
var conHeight=container.offsetHeight;
inner.style.marginTop=((conHeight-inHeight)/2);
任何帮助都会很棒:)
http://jsfiddle.net/tmyie/EttZQ/ http://jsfiddle.net/tmyie/EttZQ/
你几乎已经拥有了,你只需要改变一些事情。第一的,getElementById
仅需要一个 id 字符串,而不是一个选择器。其次,您需要将“px”添加到样式声明中。
var container = document.getElementById("box2");
var inner = document.getElementById("informationBox");
var inHeight = inner.offsetHeight;
container.style.height = window.innerHeight;
container.style.width = window.innerWidth;
var conHeight = container.offsetHeight;
inner.style.marginTop = ((conHeight-inHeight)/2)+'px';
这是更新的小提琴:http://jsfiddle.net/EttZQ/1/ http://jsfiddle.net/EttZQ/1/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)