2013-09-11 3 views
0

Я не могу установить переполнение: скрыто; на обертке div для этого скрипта.Невозможно установить переполнение: скрыто; на div

Пожалуйста, посмотрите на эту скрипку js. http://jsfiddle.net/CwzAD/1/

Моя цель состоит в том, чтобы отображать на этой странице 10 ячеек (200 пикселей по высоте) и показывать только анимацию в пределах этого предела, поэтому действовать как маску.

Любая идея, что я делаю неправильно? Любой альтернативный подход даже с использованием JavaScript, если с помощью CSS не возможен?

*{ 
     margin: 0; 
     padding: 0; 
    } 
    #pageset { 
     position: fixed; 
     top: 0px; 
     left: 0px; 
     width: 500px; 
     height: 200px; 
     border: 1px solid rgba(0,255,255,1); 
     -webkit-box-sizing:border-box; 
    } 
    #wrapper { 
     position: fixed; 
     top: 0px; 
     left: 0px; 
     width: 500px; 
     background-color: green; 
     /*overflow: scroll;*/ /* PROBLEM HERE----------------*/ 
     /*height: 200px;*/ /* PROBLEM HERE----------------*/ 
    } 
    #navigator { 
     position: absolute; 
     left: 600px; 
    } 
    ul { 
     list-style: none; 
     /* margin:0px; 
     padding:0px;*/ 
    } 
    li:nth-child(even) { 
     background: #d80000; 
    } 
    li { 
     width: 100px; 
     height: 100px; 
     background-color: red; 
     float: left; 
     margin: 0px; 
    } 
    .focus { 
     background-color: yellow !important; 
    } 
    .btn { 
     float: left; 
     width: 50px; 
     height: 50px; 
     border: 2px gray solid; 
     margin: 10px; 
     background-color: #f0f0f0 ; 
    } 
    .icon { 
     width: 60px; 
     height: 60px; 
     border: 2px gray solid; 
     margin: 10px; 
     background-color: #99ff66;   
    } 

Решение здесь http://jsfiddle.net/Uz5a9/

+0

Вы askink о том, что показывает только 8 пунктов, а не 10 или я неправильно понял вопрос? –

+0

сценарий показывает 10 строк, каждая строка - 5 ячеек. Мне нужно показать анимацию внутри MASK с размером 2 строки, поэтому 200px. Может быть, в моем вопросе не было ясно :-) – GibboK

+0

hm, я не вижу в этом ничего плохого o_o На самом деле я вижу 10 в приведенном примере. –

ответ

3

В принципе, то, что вам нужно сделать, это использовать #wrapper DIV в качестве контейнера, который только 200px высоким. .content div, который вы генерируете, должен затем прокручиваться внутри этой обертки.

Для этого вам необходимо поместить обертку относительно, а затем поместить содержимое div абсолютно внутри обертки. Обертка никогда не должна перемещаться.

Содержимое может быть как можно выше, обертка должна всегда оставаться на 200 пикселей высотой.

Проверьте следующее скрипку, который демонстрирует именно это: http://jsfiddle.net/Uz5a9/

+2

Почему downvote? Это фактически делает то, что хочет плакат темы. –

+0

почему этот голос? ... спасибо, Gerrit, ваш скрипт просто отлично работает и решает мою проблему. Большое спасибо за вашу помощь в этом :-). – GibboK

0

Просто применять эти дополнительные правила #wrapper:

#wrapper { max-height: 200px; overflow: hidden; } 

и, кажется, работает так же, как описано.

+0

Попробуйте нажать на div DOWN, вы увидите анимацию. Используя ваше решение, я боюсь, что не вижу других ячеек, они должны скользить вверх – GibboK

1

Попробуйте CSS он будет работать нормально DEMO HERE

.content { 
    height:200px; 
    overflow:hidden 
} 
+1

Прошу прощения, но эти решения не маскируют первые две строки. – GibboK

+0

Я не знаю, в каком браузере, но в хроме я все еще вижу все остальные квадраты. - Это не работает, так как он скрывает предыдущие квадраты. –

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