2014-01-28 3 views
14

http://jsfiddle.net/XW9Se/Ширина проигнорирован по пунктам Flexbox

Я установил width: 200px; на левый DIV, но если я его просмотр с помощью инструмента инспектора браузера оказывается, что реальная ширина является случайной или что-то. Он меняется в зависимости от размера окна.

Почему ширина не вступает в силу?

изменить: если я удалю width: 100%, ширина останется фиксированной. Но мне нужно, чтобы #main div занимал оставшуюся ширину :(Есть ли способ иметь боковую панель @ фиксированной ширины, а другая DIV заполняет остальную ширину контейнера? width: auto; на #main не работает.

+2

не вся идея Flexbox, что она изменяется на изменениях размеров окна? – gpgekko

+2

да, но я хочу только 1 гибкий столбец для изменения ширины: P – Alex

+0

попробуйте добавить «flex-flow: wrap;» в контейнер – user3338098

ответ

4

Удалить ширину на .container > div и использовать flex: auto; на #main: fiddle

#main { 
    flex: auto; 
    background: lightblue; 
    -webkit-order: 2; 
    order: 2;  
} 
0

Добавить дисплей:. встроенный блок, в левом классе

1

Дайте #left DIV min-width из 200px, должны сделать работу

+0

min-width не работает в ipad broswer –

52

Ответ от Adrift идеален; но изменения, чтобы сделать его более гибким будет

#left{ 
    flex-basis: 200px; 
    flex-grow: 0; 
    flex-shrink: 0; 
} 

И удалить свойство ширины полностью.

Было бы гибкого способа сказать, что элемент будет иметь неизменную ширину 200px

+12

стенография: 'flex: 0 0 200px;' – Dan

+0

Почему не этот worl – MaxwellLynn

+2

Просто добавьте свойство «flex-shrink: 0' и ширина css будут соблюдаться. –

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