Центр плавающих div внутри абсолютного позиционного div - PullRequest
5 голосов
/ 12 января 2010

У меня есть этот набор HTML и CSS. Я хочу, чтобы маленькие блоки гаджетов плавали влево, но находились по центру абсолютной обертки гаджета.

Итак, обертка гаджета расположена абсолютно внизу страницы. Он содержит х количество гаджетов, которые плавают слева внутри оболочки.

Все эти гаджеты должны быть сосредоточены внутри оболочки - это возможно и как ...? Это действительно убивает меня ....

HTML

<div id="gadget-wrapper">
    <div class="gadget">
        <h2>1</h2>
        <div class="value-holder critical">not set</div>
        <div class="value-holder non-critical">not set</div>
    </div>
    <div class="gadget">
        <h2>2</h2>
        <div class="value-holder critical">not set</div>
        <div class="value-holder non-critical">not set</div>
    </div>
    <div class="gadget">
        <h2>3</h2>
        <div class="value-holder critical">not set</div>
        <div class="value-holder non-critical">not set</div>
    </div>
</div>

CSS

#gadget-wrapper {
    width: 900px;
    font-family: "Century Gothic";
    color: #FFF;
    position: absolute;
    bottom: 10px;
    outline: 1px solid green;
}

.gadget h2 {
    margin: 0px;
    font-weight: normal;
    font-size: 16px;
}

.gadget {
    min-width: 120px;
    margin-right: 10px;
    padding: 5px;
    -webkit-border-radius: 10px;
    background-color: #383838;
    opacity: 0.75;
    float: left;
    border: 4px solid #000;
}

.value-holder.critical.active {
    color: #FF0000;
}

.value-holder.non-critical.active {
    color: #FFFF00;
}

.value-holder {
    font-size: 28px;
    float: left;
    width: 50%;
    text-align: center;
}

Ответы [ 2 ]

7 голосов
/ 12 января 2010

Вы пытались сделать элементы gadget встроенными и выровнять их по центру с помощью выравнивания текста?

#gadget-wrapper {
    ...
    text-align: center;
}

.gadget {
    display: inline;
    float: none;
}

Это может сработать, я просто не уверен, как будут вести себя элементы уровня блока внутри (сейчас я не могу это проверить). Вы также можете попробовать inline-block вместо inline.

3 голосов
/ 12 января 2010

display: inline-block; работает с первым ответом. убедитесь, что вы удалили float: left;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...