Я пытаюсь выяснить, как заставить мой элемент всегда прокручиваться до самого конца, независимо от высоты браузера. Моя конечная цель - иметь всплывающее окно, которое не показывает полосу прокрутки, но вы все равно можете прокручивать, если содержание превышает высоту всплывающего окна. Наконец, у меня есть изображение вверху, которое должно быть наполовину и наполовину из содержимого (визуально). Вот что я попробовал:
Я бы посоветовал взглянуть на это с помощью jsfiddle ниже, здесь, на SO, результат кажется другим, потому что вместо CSS у меня есть код SASS.
.popup-wrapper {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
max-width: 400px;
overflow: hidden;
height: 100%;
max-height: 700px;
z-index: 991;
.popup-logo {
position: absolute;
top: 0;
left: 50%;
transform: translate(-50%, 0);
z-index: 992;
}
.popup-content-wrapper {
position: absolute;
top: 50px;
left: 0;
width: 100%;
max-width: 400px;
overflow: hidden;
height: 100%;
max-height: 650px;
z-index: 991;
padding-top: 70px;
background-color: rgba(255, 255, 255, 0.9);
.popup-content {
width: calc(100% - 40px);
height: 100%;
max-height: 580px;
overflow: auto;
padding: 0 40px 20px 20px;
p {
color: #000;
}
}
}
}
<div class="popup-wrapper">
<img class="popup-logo" src="http://www.clker.com/cliparts/A/x/R/m/4/2/black-white-ying-yang-th.png" asp-append-version="true" />
<div class="popup-content-wrapper">
<div class="popup-content">
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
</div>
</div>
</div>
Вот jsfiddle: https://jsfiddle.net/ac1nb9qj/
Как видно из приведенного выше примера, если экран длиннее, чем всплывающее окно, то проблем нет, однако, если высота экрана меньше высоты всплывающего окна, всплывающее окно не полностью прокручивается до конца содержание, часть контента обрезается внизу.
ПРИМЕЧАНИЕ. Используется SASS (SCSS), а не обычный CSS.
РЕДАКТИРОВАТЬ: Чтобы уточнить, я уже достиг, что моя полоса прокрутки не отображается, моя единственная проблема здесь в том, что, когда я добавляю отступы сверху, чтобы поместить мое изображение, моя прокрутка больше не идет вниз. Это то, что я пытаюсь исправить. Таким образом, предложенное дублирование ниже неверно.