JSFiddle - React, Tailwind, and code Playground
HTML
<div class="accordion">
<fieldset class="section" id="id1">
<legend class="section-header">
<a href="#id1">Section 1</a>
</legend>
<div class="section-content">
Section 1 content
</div>
</fieldset>
<fieldset class="section" id="id2">
<legend class="section-header">
<a href="#id2">Section 2</a>
</legend>
<div class="section-content">
Section 2 content
</div>
</fieldset>
</div>
CSS
.accordion {
font-family: sans-serif;
}
.accordion .section {
margin: 0.5em;
border-radius: 5px;
border: 1px solid gray;
box-shadow: inset 0 0 5px gray;
}
.accordion .section-header {
background-color: #e7e7e7;
border: 1px solid gray;
border-radius: 3px;
font-size: 0.8em;
padding: 0.5em;
padding-top: 0.3em;
padding-bottom: 0.3em;
}
.accordion .section-header a {
text-decoration: none;
color: gray;
}
.accordion .section:hover .section-header a {
color: navy;
}
.accordion .section .section-content {
display: none;
}
.accordion .section:target .section-content {
display: block;
padding: 0.5em;
}
.accordion .section:target {
border: 1px solid darkgray;
}
.accordion .section:target .section-header a {
color: black;
cursor: default;
}
.accordion .section-header a:before {
content:"\25BA\0000a0"
/* unicode triangle pointing right */
}
.accordion .section:target .section-header a:before {
content:"\25BC\0000a0"
/* unicode triangle pointing down */
}