JSFiddle - React, Tailwind, and code Playground
by NunoMira
HTML
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.min.css">
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="#">Project name</a>
</div>
</div>
</div>
<div class="accordionWrapper">
<div class="accordion" id="accordion">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
Group #1
</a>
</div>
<div id="collapseOne" class="accordion-body collapse in">
<div class="accordion-inner">
Anim pariatur cliche...<br />
Anim pariatur cliche...<br />
Anim pariatur cliche...<br />
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
Group #2
</a>
</div>
<div id="collapseTwo" class="accordion-body collapse">
<div class="accordion-inner">
Anim pariatur cliche...
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
Group #3
</a>
</div>
...
CSS
html {
height: 100%;
}
body {
height: 100%;
width: 100%;
margin: 0;
}
.accordionWrapper { position: absolute; background: #dddddd; top: 0; left: 0; right: 0; bottom: 0; margin-top: 50px; }
.in {overflow: auto; }
JavaScript
//Tab bootstrap a esticarem para o fim da página
$(function()
{
var recalculateHeight = function(obj)
{
var wrapHeight = $('.accordionWrapper').innerHeight(),
groupHeight = $('.accordion-toggle').first().outerHeight(),
cnt = $('.accordion-toggle').length,
freeSpace = wrapHeight - cnt * (groupHeight + 5);
obj.css('height', freeSpace + 'px');
};
recalculateHeight($('.in'));
$('.collapse').on('shown', function()
{
recalculateHeight($(this));
});
});