2012-05-01 2 views
1

Недавно я сделал сайт, на котором мне понадобилось 6 столбцов с видимым переполнением y. Я не мог сделать чистые 6 дивизий. Ширина должна быть более широкой для настройки на 6 полос прокрутки и немного отступов.разделите экран на равные части с переполнением

Есть ли лучший способ, чем моя попытка?

<div class="col"> 

    <div class="section"> 
    Content that overflows this section. 

    </div> 

</div> 

    .col { 

    width: 15.2%; 
    padding-right: 15px; 
    float: left; 
} 

.section { 
    overflow-y: scroll; 
    width: 100%; 


} 

Это очень неряшливо, и столбцы не достигают крайнего правого края.

Я не знаю jquery достаточно хорошо, чтобы попытаться, но вам понравятся любые советы.

** * *** Я работал его, так глупо. Вам нужно использовать% для всего, включая дополнение. Duh ** * **** Извините за потраченное время!

+2

Попробуйте использовать структуру сетки CSS, например ht tp: //960.gs/ для создания макетов потребуется вся тяжелая работа. – luke2012

+0

Эта ссылка даст вам сетку, основанную на макете с фиксированной шириной (в основном 960 пикселей). Я не думаю, что это будет очень полезно при проектировании переменной ширины, как разработал op. Использование '%' определенно решит проблемы, но иногда вычисленное значение из '%' может быть слегка отключено в зависимости от браузера. – sarcastyx

ответ

3

Я бы сказал, что лучше установить прокладку для внутреннего div .section, поэтому не нужно будет регулировать ширину .col.

Попробуйте этот HTML код:

<div id="grid"> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
    <div class="col"> 
     <div class="section"> 
     Content that overflows this section. 
     </div> 
    </div> 
</div> 

С помощью этого CSS:

#grid { 
    margin-left: -15px; 
} 

.col { 
    width: 16.6%; 
    float: left; 
} 

.section { 
    overflow-y: scroll; 
    margin-left: 15px; 
    height: 100px; 
    background: green; 
}​ 

Пожалуйста, обратите внимание, что #grid { margin-left: -15px; } поможет вам избавиться от лишних пробелов перед первым колонке

посмотрите at Live demo

+0

Это намного лучший способ добиться того, чего я хотел. Большое спасибо. – uriah

+0

Я искал высоко и низко для этого фрагмента. Большой СПАСИБО! –

+0

@SPATEN приветствую :) – aliona

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