Как изменить ширину, чтобы заполнить оставшееся пространство (CSS) Посмотрите: Результат должен быть Ответ 1 #sidebar { float:left; width:280px; } #content { margin: 0 0 0 280px; } /* dont float it */ http://jsfiddle.net/auTbG/1/ У вас будут проблемы, если у вас есть float внутри #content, и вы пытаетесь их очистить. Ответ 2 Фактически использование css flex display может решить это легко. Задайте родительский контейнер display: flex; align-items: stretch; align-content: stretch; Тогда у детей будет flex-grow: 0; Сделайте последнее дочернее устройство flex-grow: 1; Поместите #sidebar и #post_box в #content, а затем #content { display:flex; align-items: stretch; align-content: stretch; } #sidebar { float:left; width:280px; flex-grow: 0; } #post_box { float: left; flex-grow: 1; }
Ответ 1 #sidebar { float:left; width:280px; } #content { margin: 0 0 0 280px; } /* dont float it */ http://jsfiddle.net/auTbG/1/ У вас будут проблемы, если у вас есть float внутри #content, и вы пытаетесь их очистить.
Ответ 2 Фактически использование css flex display может решить это легко. Задайте родительский контейнер display: flex; align-items: stretch; align-content: stretch; Тогда у детей будет flex-grow: 0; Сделайте последнее дочернее устройство flex-grow: 1; Поместите #sidebar и #post_box в #content, а затем #content { display:flex; align-items: stretch; align-content: stretch; } #sidebar { float:left; width:280px; flex-grow: 0; } #post_box { float: left; flex-grow: 1; }