Сделать колонку фиксированной позиции в bootstrap


используя Bootstrap, у меня есть класс столбца сетки="col-lg-3", который я хочу поместить в положение:исправлено, а другое .col-lg-9-это нормальное положение (прокрутка страницы).

<div class="row">
    <div class="col-lg-3">
        Fixed content
    </div>
    <div class="col-lg-9">
        Normal scrollable content
    </div>

</div>

точно так же, как левый столбец в LifeHacker.com Вы увидите, что левая часть исправлена, однако я прокручиваю страницу.

Я использую bootstrap v3.1. 1

7 56

7 ответов:

<div class="row">
    <div class="col-lg-3">
       <div class="affix">
           fixed position 
        </div>
    </div>
    <div class="col-lg-9">
       Normal data enter code here
    </div>
</div>

Пример:bootply.com/101100

повторяя ответ Ihab, просто используя position:fixed и bootstraps col-offset вам не нужно быть конкретным по ширине.

<div class="row">
    <div class="col-lg-3" style="position:fixed">
        Fixed content
    </div>
    <div class="col-lg-9 col-lg-offset-3">
        Normal scrollable content
    </div>
</div>

следуя решению здесь http://jsfiddle.net/dRbe4/,

<div class="row">
    <div class="col-lg-3 fixed">
        Fixed content
    </div>
    <div class="col-lg-9 scrollit">
        Normal scrollable content
    </div>

 </div>

Я изменил некоторые CSS, чтобы работать просто идеально:

.fixed {
        position: fixed;
        width: 25%;
}
.scrollit {
        float: left;
        width: 71%
}

спасибо @Lowkase за совместное использование решения.

в Bootstrap 3 class="affix" работает, но в Bootstrap 4 это не. Я решил эту проблему в Bootstrap 4 с class="sticky-top" (используя position: fixed в CSS есть свои проблемы)

код будет примерно такой:

<div class="row">
    <div class="col-lg-3">
        <div class="sticky-top">
            Fixed content
        </div>
    </div>
    <div class="col-lg-9">
        Normal scrollable content
    </div>
</div>

используйте это, работает для меня и решать проблемы с маленьким экраном.

<div class="row">
    <!-- (fixed content) JUST VISIBLE IN LG SCREEN -->
    <div class="col-lg-3 device-lg visible-lg">
       <div class="affix">
           fixed position 
        </div>
    </div>
    <div class="col-lg-9">
    <!-- (fixed content) JUST VISIBLE IN NO LG SCREEN -->
    <div class="device-sm visible-sm device-xs visible-xs device-md visible-md ">
       <div>
           NO fixed position
        </div>
    </div>
       Normal data enter code here
    </div>
</div>

обновлено для Bootstrap 4

Bootstrap 4 теперь включает в себя position-fixed класс для этой цели, так что нет необходимости в дополнительных CSS...

<div class="container">
    <div class="row">
        <div class="col-lg-3">
            Fixed content
        </div>
        <div class="col-lg-9">
            Normal scrollable content
        </div>
    </div>
</div>

https://www.codeply.com/go/yOF9csaptw

просто сделать это :

<div class="row" style="position:fixed;">
    <div class="col-lg-3">
        Fixed content
    </div>
    <div class="col-lg-3"> // 
    <div class="col-lg-9">
        Normal scrollable content
    </div>

</div>