2015-09-07 5 views
0

Я добавил область виджета под своим заголовком, и я стараюсь сосредоточить ее под логотипом.Центрируйте div под заголовком

Я попытался добавить display: block и margin:0 auto или text-align: center на #header-sidebar, но он не работает. Кроме того, я попытался изменить структуру HTML-кода, а не только сделать CSS-настройки, но все же, стек #header-sidebar слева и не центрирован.

Вот мой код:

HTML код:

<header id="header"> 

    <div class="header-container"> 

     <a href="javascript:;" class="show-on-phone show-on-tablet" id="phone-toggle-menu"></a> 

     <a href="#" class="logo"><img style="vertical-align: middle;" src="#"></a> 

     <nav> //here is the navigation, hidden in mobile view </nav> 

     <div id="header-sidebar" class="header-widget-area"> 
      <div class="textwidget"> 
       //some widget here 
      </div> 

      <div class="mlp_language_box"> 
       // some other widget here 
      </div> 
     </div> 
    </div> 

</header> 

CSS код:

header#header { 
    position: relative; 
    z-index: 300; 
    height: 70px; 
    line-height: 70px; 
    display: block; 
} 

header#header #phone-toggle-menu { 
    left: 20px; 
    margin-left: 0; 
    position: absolute; 
} 

header#header .header-container { 
    max-width: 1200px; 
    margin: 0 auto; 
} 

header#header .logo { 
    width: 100%; 
    float: none; 
    box-sizing: border-box; 
    text-align: center; 
    position: absolute; 
} 
+0

вы хотите, чтобы ваш логотип быть абсолютным расположен? – Chetan

+0

@Chetan Если я этого не сделаю, он не выровнен по центру рядом с кнопкой переключения для мобильного устройства. По крайней мере, я не мог найти способ – Tasos

+0

@Tasos, вы также можете поделиться своим кодом css для '# header-sidebar' или' .header-widget-area' –

ответ

1

display:table и margin:auto как для логотипа и виджетов области будет делать трюк ... Так одна кнопка переключения может оставаться абсолютной.

header#header { 
    position: relative; 
    z-index: 300; 
    height: 70px; 
    line-height: 70px; 
    display: block; 
} 

header#header #phone-toggle-menu { 
    left: 20px; 
    margin-left: 0; 
    position: absolute; 
} 

header#header .header-container { 
    max-width: 1200px; 
    margin: 0 auto; 
} 

header#header .logo { 
    box-sizing: border-box; 
    display: table; 
    margin: auto; 
} 

header #header-sidebar{ 
    display: table; 
    margin: auto; 
} 
+0

Я забыл поставить элемент 'nav', который находится между ними, но скрыт в мобильном телефоне. Однако он занимает место, и боковая панель заголовка не может складываться под логотипом. Если я изменю структуру html и поставлю навигацию после боковой панели заголовка, будет ли она работать? – Tasos

+0

Извините, я не понимаю, можете ли вы разместить предлагаемую разметку и ожидаемый результат. – Chetan

+0

У меня была панель навигации между ними, но после этого она двигалась без проблем. Я назвал ваш ответ правильным. Спасибо :) – Tasos

0

Заменить код CSS со следующими:

header#header { 
    position: relative; 
    z-index: 300; 
    height: 70px; 
    line-height: 70px; 
    display: block; 
} 

header#header #phone-toggle-menu { 
    left: 20px; 
    margin-left: 0; 
    position: absolute; 
} 

header#header .header-container { 
    max-width: 1200px; 
    margin: 0 auto; 
    text-align: center; 
} 

header#header .logo {   
    box-sizing: border-box; 
    text-align: center; 
    position: absolute; 
} 
Смежные вопросы