2014-08-11 4 views
-4

Я пытаюсь создать строку заголовка с красивым центральным названием и панелью инструментов рядом с ней. Проблема, с которой я сталкиваюсь, заключается в том, что по мере того, как панель инструментов растет, название движется дальше и дальше от центра (и на самом деле никогда не сосредоточено на самом деле). Я обедал с этим некоторое время, попробовал несколько поисков, но не могу найти ответа. Может ли кто-то с немного более сложным опытом бросить мне кость, пожалуйста?Центрирование названия, когда рядом с панелью инструментов

HTML

<div> 
    <span> 
     Section Title 
    </span> 
    <div class="toolbar"> 
     <button>Add</button> 
     <button>Remove</button> 
</div> 

CSS

div { background:red;overflow:hidden; text-align: center; } 

span a { 
    background:#222; 
    color:#fff; 
    display:inline-block; 

    margin:10px 10px 0 0; 
    padding:5px 10px 
} 

.toolbar { 
    float: right; 
} 

Вот скрипку: http://jsfiddle.net/scottvossen/cePe3/124/

+0

Видать по центру мне. – APAD1

+3

Приглашение, предлагающее вам отправить код в свой вопрос, есть причина. Не обманывайте его – Bojangles

+0

Да, наконец, выяснилось, что ему нужен код, который не просто хочет ссылку в кодовом блоке. Мой плохой ... не публикуйте вещи часто. – scottvossen

ответ

1

Вы будете хотеть использовать position: relative на внешнем DIV и position: absolute на внутренних делах. Вы можете узнать больше о позиционировании divs here.

FIDDLE. Я также сосредоточил текст по вертикали.

HTML

<div id="background"> 
    <div id="centeroutline"> 
     <div id="centertext"> 
     Section Title 
     </div> 
    </div> 
    <div class="toolbar"> 
     <div id="buttons">   
      <button>Add</button> 
      <button>Remove</button> 
     </div> 
    </div> 
</div> 

CSS

#background { 
    position:relative; 
    background:red; 
    overflow:hidden; 
    text-align: center; 
    height:26px; 
    width:auto; 
} 

#buttons{ 
    position:relative; 
} 

#centeroutline { 
    color:#fff; 
    display: table; 
    width:100%; 
} 

#centertext{ 
    margin:10px 10px 0 0; 
    padding:5px 10px; 
    display: table-cell; 
    vertical-align: middle; 
    width:100%; 
    text-align:center; 
} 

.toolbar { 
    right:0; 
    top:0; 
    position:absolute; 
} 
+0

Я бы предложил вам добавить код в ответ. Если скрипка опустится, код все равно будет находиться в режиме переполнения стека. – Sifu

+0

Отличный пункт. Сделаю :) –

+0

Отличный ответ! Я пришел к такому же выводу после работы с предыдущим ответом. Это более красноречиво, так что вы получите это !. – scottvossen

1

Вы можете добавить position: relative к охватывающему div. Затем абсолютное положение панели инструментов в углу.

div{ 
    position: relative 
} 

.toolbar{ 
    position: absolute; 
    top: 0; 
    right: 0; 
} 

FIDDLE

+0

потрясающий! Кажется, работает для меня. Спасибо за быстрый ответ. – scottvossen

Смежные вопросы