JSFiddle - React, Tailwind, and code Playground

by pbatey

HTML

<button>press me</button>
<div class="collapsable collapsed" id="outer">
    <div id='inner'>
    lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit
    </div>
</div>
<div>
     lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit lorem ipsum dolr sit 
</div>

CSS

.collapsable {
    width:100px;
    -webkit-transition: max-height .5s ease;
    -moz-transition: max-height .5s ease;
    transition: max-height .5s ease;
    background:#ccc;
    overflow: hidden;
}
.collapsed {
    max-height:0px;
}

JavaScript

$('button').bind('click', function(e) { 
    e.preventDefault();
    var w = $('#outer');
    if (w.hasClass('collapsed')) {
        w.css({ "max-height": $('#inner').outerHeight() + 'px' });

    } else {
        w.css({ "max-height": "0px" });
    }
    w.toggleClass('collapsed');
});