I have this 2x2 grid in Bootstrap with a simple accordion in each cell. Upon expanding the first accordion under cell A, it pushes the cell C to the right.
Is there a way to prevent this behavior, and keep cell C under cell A when clicking the Accordion?
Link to the code: https://plnkr.co/edit/BRqwLeGqAlqLSvWFQVQL?p=info
JavaScript:
<script>
$(function() {
$(".accordion").accordion({
collapsible: true,
active: false
});
});
</script>
HTML:
<div class="container">
<div class="row">
<div class="col-xs-6">
<span>A</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
<div class="col-xs-6">
<span>B</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
<div class="col-xs-6">
<span>C</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
<div class="col-xs-6">
<span>D</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
</div>
</div>
Yes this can be done change the html a bit like this
<body>
<div class="container">
<div class="">
<div class="col-xs-6">
<div class="row">
<span>A</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
<div class="row">
<span>C</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="row">
<span>B</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
<div class="row">
<span>D</span>
<div class="accordion">
<h3>Section 1</h3>
<div>
<p>Mauris mauris ante, blandit et</p>
</div>
</div>
</div>
</div>
</div>
and change the CSS like this
<style>
.col-xs-12 {
background-color: blue;
color: white;
text-align: center;
border: 1px solid black;
}
.col-xs-6 {
background-color: yellow;
color: black;
text-align: center;
}
.col-xs-6 .row{
border: 1px solid black;
padding: 15px 15px 0px 15px;
}