我试图将div水平居中于另一个div中。我想要居中的div是一个使用jQuery的向下滚动按钮,它有我自己制作的自定义图标字体和默认的宽度/高度。我想将这个div放在我的主div内,并保持原始大小,因为我想继续使用它作为按钮。例如: 我想制作类似白色箭头的东西,它指向中心,但没有弄乱我的宽度。 这是我的代码:
HTML
<div id="intro-tab"> <!-- First/Intro Tab -->
<div id="introtab-godownbtn">Q</div>
</div>
CSS
#intro-tab {
width: auto;
height: 100%;
position: absolute;
left: 0px;
right: 0px;
top: 0px;
background-color: red;
box-shadow: 0px 1px 3px #000;
}
#introtab-godownbtn {
font-family: iconFont;
font-size: 50px;
position: absolute;
bottom: 25px;
width: 60px;
height: 30px;
left: 50%;
margin-left: 30px;
background-color: #FFF;
}
#introtab-godownbtn:hover {
cursor: pointer;
}
的jQuery
$('#introtab-godownbtn').click(function(){
$("html, body").animate({
scrollTop: (screen.height - 90)
}, 600);
return false;
});
我已经尝试了很多方法来使按钮introtab-godownbtn
居中,但它不起作用,或者只是弄乱我的按钮大小和点击位置。我问题的任何解决方案?
答案 0 :(得分:0)
据我所知,您正在尝试将HTML元素水平居中。通常,人们会使用margin: 0 auto;
方法,在其应用的元素上设置固定宽度。这是一个例子:http://jsfiddle.net/5XTq2/
如果这个答案没有帮助,你能提供你想要实现的布局的模型/截图吗?我很乐意更新答案以满足您的需求。
编辑: 根据您的Spotify示例,如果您检查页面并选择向下箭头,它将具有以下样式。
.scroller-arrow {
width: 60px;
height: 60px;
background-image: url(../i/_global/arrow-big.png);
cursor: pointer;
display: block;
margin: 0 auto;
position: relative;
-webkit-tap-highlight-color: transparent;
}
答案 1 :(得分:0)
要使内部绝对定位的div水平和垂直居中:
HTML:
<div id="intro-tab">
<div id="introtab-godownbtn">Q</div>
</div>
CSS:
body { margin: 0; }
#intro-tab {
width: 100%;
height: 100%;
position: absolute;
background-color: red;
box-shadow: 0px 1px 3px #000;
}
#introtab-godownbtn {
background-color: #FFF;
font-family: iconFont;
font-size: 20px;
width: 60px;
/* this does the centering */
height: 30px;
position: absolute;
margin: auto;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
#introtab-godownbtn:hover { cursor: pointer; }