JSFiddle - React, Tailwind, and code Playground

HTML

<flexlayout>
<item>
    <headline>Headline 1. Click me!</headline>
    <story>Story 1 starts here</story>
 </item>
<box>I move but my size and content are fixed.</box>
<item>
    <headline>Headline 2. Click me!</headline>
    <story>Story 2 starts here</story>    
</item>
<item>
    <headline>Headline 3. Click me!</headline>
    <story>Story 3 starts here</story>
 </item>
<item>
     <headline>Headline 4. Click me!</headline>
    <story>Story 4 starts here</story>   
</item>
<box id="colorChanger">I move and my size is fixed, but my content is not.</box>
<item>
    <headline>Headline 5. Click me!</headline>
    <story>Story 5 starts here</story>
</item>
<item>
    <headline>Headline 6. Click me!</headline>
    <story>Story 6 starts here</story>
</item>
<item>
    <headline>Headline 7. Click me!</headline>
    <story>Story 7 starts here</story>
</item>
<item>
     <headline>Headline 8. Click me!</headline>
    <story>Story 8 starts here</story>
</item>
<item>
    <headline>Headline 9. Click me!</headline>
    <story>Story 9 starts here</story>
</item>
<item>
    <headline>Headline 10. Click me!</headline>
    <story>Story 10 starts here</story>
</item>
</flexlayout>

CSS

flexlayout {
	display: flex;
    flex-flow: column;
    height: 600px;
}

item {
    display: block;
    border: 1px solid black;
    flex-grow: 1; 
}

item {
    background-color: lightblue;
    height: 50px;
    transition: height 2s;
}

box {
    position: relative;
    flex: none;
    height: 100px;
    background-color: lightgreen;
    border: 1px solid black;
}

headline {
    display: block;
    font-weight: bold;
}

story {
    display: block;
}

JavaScript

function toggleHeight(event, i) {
   if (isExpanded[i]) {
     event.currentTarget.style.height = "50px";
     isExpanded[i] = false;
   } else {
     event.currentTarget.style.height = "200px";
     isExpanded[i] = true;
   }
}


var allItems = document.getElementsByTagName("item");
var isExpanded = new Array(allItems.length);

for (var i = 0; i < allItems.length; i++) {
  allItems[i].addEventListener("mousedown",
                               function(val) { 
                                   return function(event) {
                                       toggleHeight(event, val); };}(i));
  isExpanded[i] = false;
}