2014-01-16 2 views
1

У меня есть два divs в моем приложении. Как я могу сделать свой левый div подходящим для всего пространства до правого div. Правильным может быть текст или изображение любой ширины.Динамическая ширина для поплавка влево div

<div id="header" class="header"> 
    <div class="logo"> 
     <img src="/Content/images/my_logo.png" alt="" /> 
    </div> 
    <div class="logoClient"> 
     Test Client /*here can be text or image with ANY SIZE */ 
    </div> 
    <div class="clear"></div> 
</div> 

В этом примере я сделал с фиксированной шириной (700px и 200px), но это неправильно, потому что правая в текст является динамичным, и я хочу налево зеленый бар динамичным тоже.

http://jsfiddle.net/C5GL6/1/

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

http://jsfiddle.net/sjfQj/

Как я могу добиться этого?

+0

Вы ищете [это] (http://stackoverflow.com/questions/16529291/div-to-take-up-entire-remaining-width/16529353#16529353)? кто-то недавно отказал мне в этом ответе по уважительной причине –

+1

Удалите 'width' из div div – Anup

+0

@ Mr.Alien, нет, в вашем примере слева div имеет фиксированную ширину ... Я не хочу, чтобы оба левого и правого divs имели фиксированная ширина ... :) – Gab

ответ

0

Удалить ширину размер в DIV

Отредактировано скрипку http://jsfiddle.net/C5GL6/2/

.logo { 
float: left; 
height: 55px; 
padding: 10px 20px; 
background: #004B35; 

} 
+0

http://jsfiddle.net/C5GL6/3/ Зеленый бар не фитинг всего места до правого текста – Gab

0

Удалить width и добавить float:left в обе дивы

.header 
{ 
    width: 950px; 
    font-family:Helvetica, Arial, sans-serif; 
    display:table 
} 

.logo { 
    height: 55px; 
    padding: 10px 20px; 
    background: #004B35; 
    display:table-cell; 
} 

.logoClient 
{ 
    display:table-cell; 
    height: 55px; 
    line-height: 55px; 
    padding: 10px 0px; 
    margin:0px -10px 0px 0px; 
    font-size: 30px; 
    color: #004B35; 
    overflow:hidden; 
    font-weight: bold; 
    text-align: right; 
    background: red; 
} 

DEMO Updated

+0

http://jsbin.com/ORetUbu/4 Небольшого текста не apperaing в правой части и левой части не подходит для всего оставшегося пространства. – Gab

+1

Используйте 'display: table' и' table-cell'. вот демонстрация http://jsbin.com/ORetUbu/6/ – Sowmya

+0

Это будет хороший способ ... Но в любом случае мне нужно просто противоположное (красная часть должна быть с размером текста (размер «Test Client» «или какой бы текст они ни были), а черная часть должна соответствовать оставшемуся пространству) ... – Gab

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