Skip to content

Instantly share code, notes, and snippets.

@loriezn
Created October 4, 2016 20:13
Show Gist options
  • Save loriezn/2277e69ee0b6ba39de395dd163717869 to your computer and use it in GitHub Desktop.
Save loriezn/2277e69ee0b6ba39de395dd163717869 to your computer and use it in GitHub Desktop.
BEM Accordion
<div class="accordion">
<div class="accordion__item">
<h3 class="accordion__title js-title">Real Lorem Ipsum by 37signals</h3>
<p class="accordion__copy accordion__copy--open js-copy">By not having the imagination to imagine what the content "might" be, a design consideration is lost. Meaning becomes obfuscated because "it's just text", understandability gets compromised because nobody realized that this text stuff was actually meant to be read. Opportunities get lost because the lorem ipsum garbage that you used instead of real content didn't suggest opportunities. The text then gets made really small, because, it's not meant to be used, we might as well create loads of that lovely white space.</p>
</div>
<div class="accordion__item">
<h3 class="accordion__title js-title">A random title</h3>
<p class="accordion__copy js-copy">By not having the imagination to imagine what the content "might" be, a design consideration is lost. Meaning becomes obfuscated because "it's just text", understandability gets compromised because nobody realized that this</p>
</div>
<div class="accordion__item">
<h3 class="accordion__title js-title">A random title</h3>
<p class="accordion__copy js-copy">By not having the imagination to imagine what the content "might" be, a design consideration is lost. Meaning becomes obfuscated because "it's just text", understandability gets compromised because nobody realized that this</p>
</div>
<div class="accordion__item">
<h3 class="accordion__title js-title">A random title</h3>
<p class="accordion__copy js-copy">By not having the imagination to imagine what the content "might" be, a design consideration is lost. Meaning becomes obfuscated because "it's just text", understandability gets compromised because nobody realized that this</p>
</div>
<div class="accordion__item">
<h3 class="accordion__title js-title">A random title</h3>
<p class="accordion__copy js-copy">By not having the imagination to imagine what the content "might" be, a design consideration is lost. Meaning becomes obfuscated because "it's just text", understandability gets compromised because nobody realized that this</p>
</div>
</div>
var $title = $('.js-title');
var copy = '.js-copy';
$title.click(function () {
$(this).next(copy).slideToggle();
$(this).parent().siblings().children().next().slideUp();
return false;
});
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
body {
background: #222;
}
.accordion {
max-width: 600px;
margin: 4rem auto;
width: 90%;
font-family: "Raleway";
background: #f4f4f4;
}
.accordion__title {
font-size: 0.7rem;
text-transform: uppercase;
letter-spacing: 2px;
padding: 1rem 1.5rem;
background: #5B5F97;
color: white;
cursor: pointer;
-webkit-transition: .3s ease;
transition: .3s ease;
}
.accordion__title:hover {
background: #484b77;
}
.accordion__copy {
display: none;
padding: 1rem 1.5rem 2rem 1.5rem;
color: gray;
line-height: 1.6;
font-size: 14px;
font-weight: 500;
}
.accordion__copy--open {
display: block;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment