2013-05-15 2 views
0

пытается установить другую раскладку с помощью медиа запросов я есть truble с определением дивы макет в соответствии с шириной экранадивы Дисплей изменение свойств с помощью CSS медиа запросов

это the fiddle result

и the fiddle test project я использую

проблема я хотел бы, чтобы получить стек поверх других

red 
green 
blue 

при ударе менее 1200 пикселей

что я делаю неправильно?

ответ

1

Основная проблема, которую вы испытываете, что CSS игнорирует код @media. Вы используете встроенный CSS, а встроенные правила CSS всегда выигрывают от внешних правил CSS (== ваш код @media).

рекомендуют читать на каскадный порядок CSS: http://monc.se/kitchen/38/cascading-order-and-inheritance-in-css

Для вашего jsfiddle, передавать весь код из style="..." на ваш CSS кадр справа, что делает его внешний CSS вместо внутренней CSS. Затем просто измените порядок следующим образом: если вы хотите, чтобы носитель переопределял значение по умолчанию css, поместите ваш @media selector под код, который вы хотите переопределить.

+0

Я обновил свой jsfiddle: http://jsfiddle.net/4v6FC/13/ Есть много способов, которыми вы можете использовать для складывания ящиков по вертикали, если у вас есть какие-либо вопросы, дайте мне знать. – belens

+0

это право. теперь у меня была небольшая проблема с синим (правым), попавшим под преднамеренное, и теперь это было исправлено, уменьшив уровень precentege ширины до 28%, поэтому теперь он прерывает линию lyout только тогда, когда намечено – LoneXcoder

0

Попробуйте использовать display:block вместо display:inline-block для класса Middle

+0

идея состояла в том, чтобы иметь их бок о бок, а затем на изменение размера до <1200 – LoneXcoder

0

проблема заключается в том, что у вас есть три контейнера, которые берут ширину и имеют display:inline-block. поэтому они будут выровнены параллельно друг другу. если вы хотите этого, то вы должны деформировать их в наружном контейнере и установить его min-width сделать это поместило фиксируется в этом положении, указав дивы ширины в px, а не в %, see here.

если вы хотите элементов стопки друг друга, то вы должны использовать display:block. в этом случае вам больше ничего не нужно.

1

Не уверен, если это то, что вы хотите, но проверить это: http://jsfiddle.net/4v6FC/11/embedded/result/

Я думаю, что у вас есть проблемы с правилами CSS старшинства: display свойство, определенное в атрибуте стиля ваших div элементов имеют больше приоритет, чем определенный в вашей таблице стилей, независимо от размера экрана. В качестве примера я просто установил это свойство для всех элементов div вне медиа-запроса и удалил свойство display из атрибута style.

Вот статья объяснения правил Сесс преимущество: http://www.vanseodesign.com/css/css-specificity-inheritance-cascaade/

+0

+1 для ссылки с приоритетом – LoneXcoder

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