Половина фиксированной, с половиной прокручиваемой компоновкой, которую можно прокручивать... CSS

У меня есть экзотический дизайн, который нуждается в следующем. Левая сторона должна прокручиваться, а правая сторона + верхняя часть должна оставаться на месте (фиксированная). См. Прикрепленное изображение.

Я могу выполнить это по положению: исправлено с верхней и правой стороны. Верхняя и правая стороны остаются на месте, пока левые прокрутки.... , НО ПРОБЛЕМА - это то, что больше нет полосы прокрутки, если кто-то приближается, и вы также не можете прокручивать влево-вправо, чтобы увидеть целую страницу

Как можно атаковать такой макет?

Спасибо.

Не удалось отправить код раньше - позвольте мне попробовать еще раз:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Exotic</title>


<style type="text/css">
#top {
background-color: #FF0;
width: 1800px;
height: 50px;
position: fixed;
left: 0px;
top: 0px;
}

#sideLeft {
float: left;
width: 950px;
background-color: #9C0;
clear: left;
}

#sidebarLeft {
background-color: #0CC;
height: 800px;
width: 300px;
float: left;
}

.list {
float: left;
width: 600px;
margin-top: 100px;
}
#ordoner {
background-color: #F90;
float: left;
width: 640px;
height: 800px;
position: fixed;
top: 50px;
left: 950px;
}

#sidebarRight {
width: 210px;
height: 800px;
position: fixed;
top: 50px;
left: 1590px;
background-color: #0CF;
}

</style>
</head>

<body>
<div id="top">
</div>
<div id="sideLeft">
  <div id="sidebarLeft"><!--end #sidebarLeft--></div>
  <div class="list"><!--end .lisist--></div>
<!--end #sideLeft--></div>
<div id="ordoner"><!--end #ordoner--></div>
<div id="sidebarRight"><!--end #sidebarRight--></div>
<div id="footer"></div>
</body>
</html>

enter image description here

Разъяснение: Мой css отражает 2 вещи в правой части, но дело в том, что правые и верхние должны быть статичными, а левые прокрутки... И они должны быть горизонтально прокручимы, если пользователь увеличивает масштаб изображения.

Кроме того, я пробовал обертывать вещи в контейнере div, но у этого есть свои проблемы - он прокручивается, но никогда не достигает правой стороны, если окно не максимизируется.

Еще раз спасибо.

Чтобы уточнить: в качестве примера, чтобы получить мою точку зрения... измените размер окна stackoverflow на половину горизонтального размера экрана... Теперь посмотрите, как вы можете прокручивать влево-вправо? Если вы увеличиваете масштаб, вы можете прокручивать влево и вправо, чтобы увидеть всю страницу. Ну, в моем макете, который работает в полноэкранном режиме браузера... как только я изменяю размер этой полосы прокрутки внизу, не появляется вообще, оставляя пользователя без возможности прокрутки по горизонтали. См. Рисунок ниже

Скрипки http://jsfiddle.net/moby7000/tWb3e/

enter image description here

enter image description here

New picture of layout with more detail:

Ответ 1

Не так сложно создать такой макет.

Я создал для вас один, Рабочий скрипт

HTML:

<div class="Container">
    <div class="Header">
        <p>The Header div height is not fixed (But he can be if you want it to)</p>
        <p>This Layout has been tested on: IE10, IE9, IE8, FireFox, Chrome, Safari, Opera. using Pure CSS 2.1 only</p>
    </div>
    <div class="Content">
        <div class="Wrapper">
            <div class="RightContent">
                <p>You can fix the width of this content.</p>
                <p>if you wont, his width will stretch just as it needs to.</p>
            </div>
            <div class="LeftContent">
                <p>this will scroll</p>
            </div>
        </div>
    </div>
</div>

CSS

*
{
    margin: 0;
    padding: 0;
}

html, body, .Container
{
    height: 100%;
}

    .Container:before
    {
        content: '';
        height: 100%;
        float: left;
    }

.Header
{
    margin-bottom: 10px;
    background-color: #6ea364;
}
.Content
{
    position: relative;
    z-index: 1;
}
    .Content:after
    {
        content: '';
        clear: both;
        display: block;
    }

.Wrapper
{
    position: absolute;
    width: 100%;
    height: 100%;
}
    .Wrapper > div
    {
        height: 100%;
    }

.LeftContent
{
    background-color: purple;
    overflow: auto;
}

.RightContent
{
    background-color: orange;
    float: right;
    margin-left: 10px;
}

Bonus: с небольшим изменением в CSS, вы можете создать красивую прокрутку. Смотрите Fiddle

Edit: Если вы хотите установить значение ширины влево, это на самом деле больше размера тела (и иметь горизонтальную прокрутку), сделайте что.

<div class="LeftContent">
    <div style="width:1200px;"> <-- better to aplly the width from the CSS
        ..<The content>..
    </div>
</div>

Ответ 2

Вы пробовали

overflow-y: scroll;

в теле?

Ответ 3

вам нужно добавить overflow:auto; в область, которую вы хотите прокрутить.