2014-02-14 3 views
0

Я пытаюсь узнать, как реализовать фиксированную боковую панель с Twitter Bootstrap 2.3.5.Исправлена ​​боковая панель с TwitterBootstrap 2.3.5

Вот фрагмент моего кода

<div class="container"> 
    <div class="row"> 
    <div class="span4" id="sidebar-left"> 
      <h2 id="sidebar-head">Hello</h2> 
      <p>Look at this stuff, isn't it neat wouldnt you think my collection complete. Wouldn't you think im a girl a girl who has everything.</p> 
      <!--sidebar nav--> 
      <ul class="nav nav-tabs nav-stacked" id="sidenav"> 
      <li><a href='#'>Home</a></li> 
      <li><a href='#'>About Me</a></li> 
      <li><a href='#'>Contact</a></li> 
     </ul> 
    </div> 

     <div class="span8" id="main"> 
      <h1>Some Text Here </h1> 
     </div> 
    </div> 
</div> 

Я добавил это в моем CSS, но #main и # боковая панель левый оказался на вершине другого:

#sidebar-left { 
    position:fixed; 
} 

#main { 
    background-color:#39C; 
    height: 1500px; 
} 

Что я делаю неправильно ?

ответ

0

После игры с кодом. Я, наконец, получил решение по моему запросу:

Во-первых: я установил # sidebar-left, чтобы поплыть влево. Это позволило убедиться, что # боковая левая сторона остается внутри контейнера. Проблема в том, что это # ​​# # # # # # # # # # # # # # # # # с левой стороны.

Чтобы решить эту проблему, я поместил #main в .offset4, чтобы переместить целые сетки div 4 вправо.

#sidebar-left { 
    position:fixed; 
    float: left; 
} 

<div class="span8 offset4" id="main"> 
      <h1>Some Text Here </h1> 
     </div> 
+0

Это неверно. Вам не нужен загрузочный лоток для размещения вещей. Позиция фиксированная и плавающая не работают вместе. Я прошу вас попытаться изучить позиционирование вместо того, чтобы бросать в какую-то бутстрап cla и как "о, хорошо, что это сработало". А что в каждом браузере? Как насчет адаптивных сценариев? Если вы удалите 'fixed', он сделает то же самое. Вы просто плаваете боковую панель слева, а затем смещаете основную область с остатком слева. Это плохо. Вы можете просто оставить их обоих. Или один из них прав. Исправлено не будет работать ни с чем, у которого нет мыши. – sheriffderek

+0

http://jsfiddle.net/sheriffderek/5ftVB/ --- Удачи. – sheriffderek

0

Вы, бедная несчастная душа, вы не указали место размещения. position: fixed; отлично ... но вам нужно top: 0;left: 0; или что-то определить его размещение.

+0

PS - вы должны испытать на ощупь и быть уверенным, что экран/ОС может принимать положение: фиксированное; -> http://codepen.io/sheriffderek/pen/qKLIo – sheriffderek

+0

@SherriffDerekL: Дело в том, что это беспорядок с макетом. Когда я добавил top: 0 left: 0, # sidebar-left вышел из контейнера. :( – gelolopez

+0

Когда вы используете фиксированное позиционирование, вы позиционируете на основе окна браузера. Если вы не укажете, что такое позиция, то что вы могли ожидать? Вероятно, все, что вы кодируете, ужасно. почему он не работает. Почему вы не включили jsfiddle или какой-нибудь html или лучшее объяснение с урезанным вариантом использования? – sheriffderek

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