Проблема в том что не получается растянуть градиент на всю страницу и при этом позиционировать нормально сайдбар, подскажите пожалуйста как можно решить это
Хеадер не должен находиться над сайдбаром? Справа от сайдбара тоже должны продолжаться градиенты, но уже без одержимого? Что должно "резиниться"?
Может вам стоит в паинте нарисовать набросок? А то ей-богу, ничего не понятно. Плюс эти псевдо-селекторы :before - не ясно, то ли вам действительно так нужно, то ли это попытка решить какую-то несуществующую проблему.
@barkalov причем header то) он наверху, растягивается и его трогать вообще не надо. Да, справа от сайдбара тоже должны продолжаться градиенты но уже без содержимого блока, "резиниться" только градиент и все.
@barkalov все же вы не совсем правильно поняли, блоки не должны быть резиновыми, у них должна быть ширина 960px + они должны быть всегда в середине как и сайд бар.
Вот мой вариант fiddle.jshell.net/SNL9f/1 но в нем есть недочет, если нажать на колесо мыши и повести мышку вправо то мы увидим градиент.
добавьте к
.block-inner {
max-width: 960px;
margin: 0 auto;
}
Тогда контент будет по центру. Но сайдбар будет всё равно справа.
Чтобы сайдбар был внутри 960px блока, выравнивающегося по середине, сайдбар должен находится внутри max-width блока, а это значит, что либо градиенты не будут растягиваться по всей ширине так как сами будут ограничены 960px, либо сайдбар будет растягивать собой первый градиентный блок по высоте (если сайдбар положить прямо в него).
Ваша версия имеет не недочёт, а она в принципе неверно спроектирована. Но, если вам уж так нужно убрать скролл, то добавьте в свой макет.
body {
overflow-x: hidden;
}
И приходите снова, когда придёт осознание, что всё нужно переделывать по-другому. )
@barkalov "max-width: 960px;" помог но сайдбар, он у вас прилеплен к правой стороне страницы а нужно чтобы он был прилеплен к правой стороне блока 960px в своем примере я это показал.
притом, градиент фон у блока который имеет фиксированный размер, поэтому и накинул его через before.
Мне нужно растянуть градиент на всю ширину страницы при этому сохранить размер блока я пробовал двумя способами и в каждом есть недочет.
Способ первый: fiddle.jshell.net/JctR7 - убрать position:relative в container, все работает НО тогда нельзя нормально расположить сайд бар, он будет всегда ездить.
Способ второй fiddle.jshell.net/SNL9f - задать градиенту ширину 9к px и передвинуть +- 3к в левую сторону, все работает НО есть нижний скролл который мешает, да его можно убрать с помощью overflow но возможность скролла останется. ( жмешь на колесо и перемещаем мышь в правую сторону )
Так как же все же растянуть градиент на всю страницу и оставить ширину у блока?)
@hoOstel ну насчет градиента-то все понятно, я только не понимаю почему Вы пытаетесь сделать через одно место. Фактически Вы хотите, чтобы Ваш градиент был фоном элемента шириной 1280px, при этом располагался на всю ширину браузера. Не понятно что за проблема с header, что за желание позиционировать абсолютом? Потому и прошу макет, так как уверен, что все сделать можно проще.
@iiil C header проблем нету, его вообще можно не трогать, главное блоки с градиентом. Абсолют нужен для того чтобы градиент был на всю ширину страницы, я не вижу как же ещё можно закинуть градиент к блоку у которого фиксированная ширина.
@hoOstel ладно, ждите, когда Вам помогут или предоставьте макет. Вы же не просто так рисуете свои градиенты, наверное есть какая-то идея, где там будет контент, что будет в полосах и так далее. Абсолют для верстки подходит редко. Дело Ваше.