Центрирование div по горизонтали внутри другого div с состоянием абсолютного положения

0

Я пытаюсь центрировать div горизонтально внутри другого div. Div, который я пытаюсь сосредоточить, - это кнопка прокрутки вниз, которая использует jQuery и имеет собственный шрифт значка, сделанный мной, и ширину и высоту по умолчанию. Я хочу сосредоточить этот div внутри моего основного div и сохранить исходный размер, поскольку я хочу продолжать использовать его в качестве кнопки. Например: Изображение 174551 Я хочу сделать что-то вроде белой стрелки, указывающей вниз в центре, но не вмешиваясь в мою ширину. Это мой код:

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 но это не сработает, или это просто испортило размер моих кнопок и щелкнуло местоположение. Любое решение моей проблемы?

2 ответа

0
Лучший ответ

Насколько я понимаю, вы пытаетесь горизонтально центрировать элемент 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;
}
  • 0
    Я добавил фото, объясняющее, что
  • 0
    @AxerFli В этом случае мой пример работает отлично. Я посмотрел на CSS Spotify, и они также используют margin: 0 auto; Техника, которую я использовал.
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; }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню