JSFiddle - React, Tailwind, and code Playground

by Elena Lembersky

HTML

<div class="sub-trigger opened">
  <span class="l-top"></span>
  <span class="l-bot"></span>
</div>

CSS

.sub-trigger {
    cursor: pointer;
    display: block;
    height: 16px;
    pointer-events: auto;
    position: relative;
    width: 16px;
    z-index: 110;    
}
.sub-trigger span.l-top {
    transform: translateY(7px) rotate(90deg);
    -webkit-transform: translateY(7px) rotate(90deg);
    -ms-transform: translateY(7px) rotate(90deg);
}
.sub-trigger span.l-bot {
    transform: translateY(7px);
    -webkit-transform: translateY(7px);
    -ms-transform: translateY(7px);
}
.sub-trigger span {
    height: 2px;
    left: 0;
    top: 0;
    position: absolute;
    transition: transform 0.3s ease 0s;
    -webkit-transition: transform 0.3s ease 0s;
    -moz-transition: transform 0.3s ease 0s;
    -o-transition: transform 0.3s ease 0s;
    width: 100%;
    background-color: #cc0000;
}
.sub-trigger.opened span.l-top {
    transform: translateY(7px) rotate(180deg);
    -webkit-transform: translateY(7px) rotate(180deg);
    -ms-transform: translateY(7px) rotate(180deg);
}
.sub-trigger.opened span.l-bot {
    background-color: transparent;
}

JavaScript

$('.sub-trigger').click(function(){
$(this).toggleClass('opened');
});