2014-10-01 2 views
0

В принципе у меня есть 3 плавающих элемента, они находятся рядом друг с другом и уменьшаются при изменении размера окна браузера. Теперь под определенной шириной (@media (max-width: 800px)) элементы получают фиксированную ширину и четкость: оба они ниже друг друга и больше не масштабируются.Центрирование div в ответном div

То, что я пытаюсь сделать сейчас, это центрирование этих трех div внутри их родителя.

margin:0 auto не помогает

Над шириной 800pixel: Imgur

Ниже ширины 800pixel:

Imgur

-> Div должны быть сосредоточены внутри желтому

Код, который у меня есть для медиа-запроса:

@media (max-width: 800px){ 
.data .data_column{width:215px;background-color:red;clear:both; margin: 0 auto;} 
.data{width:90%;background-color:yellow;} 

}

+1

Что-то в вашем коде осуществления его, [пример] (HTTP: // jsfiddle. сеть/BrianDillingham/xn0mnmrL /). Предоставить отметку и больше css? –

+0

Желательно предоставить JSFiddle (http://jsfiddle.net/), чтобы мы могли видеть, что происходит :) –

ответ

2

Замена ваш clear:both с float: none должно быть достаточно, чтобы позволить margin: auto сделать работу.

+0

Как только я добавляю float: none, моя ширина становится 100% вместо 215px в css – vlovystack

+0

Укажите отметку up и css –

+0

Я исправил проблему! У меня все еще был дисплей: inline istead дисплея: block, thanks @antoine! – vlovystack

0

Попробуйте следующее:

<div class="data"> 
    <div class="data-column"></div> 
</div> 

И CSS:

.data { 
    position: relative; 
    width:90%; 
    height: 250px; 
    background-color:yellow; 
} 

.data-column { 
    clear:both; 
    position: absolute; 
    height: 150px; 
    width: 215px; 

    /* horizontal centering */ 
    right: 0; 
    margin-right: auto; 

    left: 0; 
    margin-left: auto; 

    /* vertically centering */   
    top: 0; 
    margin-top: auto; 

    bottom: 0; 
    margin-bottom: auto; 

    background-color: red; 
} 

Вот FIDDLE