Bootstrap плавающий div с прокруткой

206
04 августа 2018, 19:00

Пытаюсь сделать так, чтобы на экране было две колонки - левая и правая. В каждой колонке по таблице. При выборе строки в левой таблице загружается таблица справа. И было бы удобно, если бы правая таблица "плавала" с возможностью её прокрутки, если не помещается на экран.

Ниже прикреплён вроде бы рабочий пример, но таблица справа сжимается до минимальной ширины, а нужно, чтобы была по размеру колонки. Bootstrap 4.1

Как быть?

#table_div { 
  position: fixed; 
  height: 100vh; 
  overflow: auto; 
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" integrity="sha384-9gVQ4dYFwwWSjIDZnLEWnxCjeSWFphJiwGPXr1jddIhOegiu1FwO5qRGvFXOdJZ4" crossorigin="anonymous"> 
<div class="container"> 
  <div class="row my-3"> 
    <div class="col-6"> 
      <table class="table table-sm table-hover"> 
        <thead> 
          <tr> 
            <th scope="col">r1</th> 
            <th scope="col">r2</th> 
            <th scope="col">r3</th> 
          </tr> 
        </thead> 
        <tbody> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
        </tbody> 
      </table> 
    </div> 
    <div class="col-6"> 
      <div> 
        <div id="table_div"> 
          <table class="table table-sm table-hover" id="my_table"> 
            <thead> 
              <tr> 
                <th scope="col">r1</th> 
                <th scope="col">r2</th> 
                <th scope="col">r3</th> 
              </tr> 
            </thead> 
            <tbody> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
              <tr> 
                <td>1</td> 
                <td>2</td> 
                <td>3</td> 
              </tr> 
            </tbody> 
          </table> 
        </div> 
        <div></div> 
      </div> 
    </div> 
  </div> 
</div>

Answer 1

Изменил немного разметку второй колонки - будьте внимательны

#parentCol{ 
  padding:0 
} 
#table_div {   
  position: fixed; 
  height: 100vh; 
  overflow: auto; 
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" integrity="sha384-9gVQ4dYFwwWSjIDZnLEWnxCjeSWFphJiwGPXr1jddIhOegiu1FwO5qRGvFXOdJZ4" crossorigin="anonymous"> 
<div class="container"> 
  <div class="row my-3"> 
    <div class="col-6"> 
      <table class="table table-sm table-hover"> 
        <thead> 
          <tr> 
            <th scope="col">r1</th> 
            <th scope="col">r2</th> 
            <th scope="col">r3</th> 
          </tr> 
        </thead> 
        <tbody> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
          <tr> 
            <td>1</td> 
            <td>2</td> 
            <td>3</td> 
          </tr> 
        </tbody> 
      </table> 
    </div> 
    <div class="col-6" id="parentCol"> 
      <div class="col-6" id="table_div"> 
        <table class="table table-sm table-hover" id="my_table"> 
          <thead> 
            <tr> 
              <th scope="col">r1</th> 
              <th scope="col">r2</th> 
              <th scope="col">r3</th> 
            </tr> 
          </thead> 
          <tbody> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
            <tr> 
              <td>1</td> 
              <td>2</td> 
              <td>3</td> 
            </tr> 
          </tbody> 
        </table> 
      </div> 
      <div></div> 
    </div> 
  </div> 
</div> 
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

READ ALSO
При просмотре сайта через смартфон не загружается css

При просмотре сайта через смартфон не загружается css

Недавно закончил с основным наполнением своего первого интернет-магазина и решил заняться оптимизациейПроблемы с блокирующими css удалось...

235
Неверно выполняется скрипт макроса

Неверно выполняется скрипт макроса

Веду семейный бюджет в Google SpreadsheetsПоявилась необходимость в значениях типа флажок

209
Отмена кнопки win

Отмена кнопки win

Разрабатываю биткоин кранТам пользователь сначала должен кликнут на рекламу потом получить за это сатоши

246
Как добавить текст из select в кнопку?

Как добавить текст из select в кнопку?

Имеется кнопка добавление товара в корзину

207