JSFiddle - React, Tailwind, and code Playground

by slphd

HTML

<div class="columns">
  <div class="column left"></div>
  <div class="column right">
    <div class="right-content">
      <div class="content-inner">
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <div class="button">
          text awdaw daw
          <span class="ripple">
          </span>
        </div>
      </div>
    </div>
  </div>
</div>

CSS

.columns{
  display: flex;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.left {
  flex-grow: 1;
    background-color: #f1f5fb;
}

.column {
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
}

.right{
    width: 726px;
    position: fixed;
    top: 0;
    right: 0;
    transition-property: transform, width;
    transition-duration: 300ms;
    background-color: lightgreen;
}

.right-content{
    flex-grow: 1;
    position: relative;
    overflow: hidden;
    display: flex;
    justify-items: stretch;
}

.content-inner{
    width: 100%;
    z-index: 0;
    overflow-y: scroll !important;
    transform: translateZ(0);
    transform: none;
}

.button{
    display: flex;
    align-items: center;
    position: relative;
    height: 32px;
    border: solid 1px #e8e9ea;
    border-radius: 4px;
    background-color: white;
    outline: none;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    font-family: 'Open Sans', sans-serif;
    padding: 0 12px;
    
    border-color: rgb(236, 249, 221);
    cursor: text;
    transform: translateY(0px);
}

.ripple{
    display: block;
    position: absolute;
    left: -50%;
    top: 0;
    margin-top: -50%;
    padding-bottom: 100%;
    width: 100%;
    background-color: #ecf9dd;
    border-radius: 50%;
    
    opacity: 1;
    transform: scale(2.7) translate(10px, 10px);
}