Вот есть у меня блок А который имеет position:absolute. Он вложенный в нормальный блок В с position:relative. Проблема в том что когда блок А вылазит из-за пределов блока В - он и вылазит за пределы body.
HTML
<div class="B">
<div class="A">
<ul>
<li>test</li>
</ul>
</div>
</div>
CSS
.A {
position:absolute;
top:20px;
left:3px;
}
.B {
position:relative;
height:200px;
width:300px;
}
Как добиться такого эффекта как на фейсбук который меняет высоту блока друзей когда он пытается вылезти за граници боди. По сути у них резиновый блок который меняет свою высоту что-бы не вылезти за граници
var outer = document.getElementsByClassName('B'),
inner = document.getElementsByClassName('A');
outer[0].style.height = inner[0].offsetHeight + 15 + 'px';
.A {
background: gold;
position:absolute;
top:20px;
left:5px;
width: 300px;
}
.B {
background: pink;
position:relative;
height:50px;
width:300px;
padding: 5px;
}
<div class="B">
<div class="A">
<ul>
<li>test</li>
<li>test</li>
<li>test</li>
<li>test</li>
<li>test</li>
<li>test</li>
</ul>
</div>
</div>
$(function() {
$(document).ready(function(){
var hA = $(".A").height();
$(".B").css('height', hA);
});
});
.A {
position:absolute;
top:20px;
left:3px;
border: 1px solid #000;
}
.B {
position:relative;
height:200px;
width:300px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="B">
<div class="A">
<ul>
<li>test</li>
<li>test</li>
<li>test</li>
</ul>
</div>
</div>
Продвижение своими сайтами как стратегия роста и независимости