Я пытаюсь центрировать 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
на кнопке introtab-godownbtn
но это не сработает, или это просто испортило размер моих кнопок и щелкнуло местоположение. Любое решение моей проблемы?
Насколько я понимаю, вы пытаетесь горизонтально центрировать элемент HTML. Как правило, можно использовать margin: 0 auto;
где фиксированная ширина задается для элемента, к которому он применяется. Вот пример такого: http://jsfiddle.net/5XTq2/
Можете ли вы предоставить макет/снимок экрана макета, который вы пытаетесь достичь, если этот ответ не поможет? Я могу с радостью обновить ответ, чтобы удовлетворить ваши потребности.
EDIT: согласно вашему примеру 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;
}
margin: 0 auto;
Техника, которую я использовал.
Чтобы внутреннее абсолютно позиционированное 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; }