JSFiddle - React, Tailwind, and code Playground

by michananya

HTML

<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700;800&display=swap" rel="stylesheet">



<div class="comment-wrapper">
    <div class="drag">
      <i class="material-icons">drag_indicator</i>
    </div>
    <div class="indicator">
      <span></span>
    </div>
 
  <div class="comment-content">
    <span class="badge">Order</span>
    <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</span>
  </div>
  <div class="actions">
   <button class="action">
      <i class="material-icons">edit</i>
   </button>
   <button class="action">
      <i class="material-icons">delete</i>
   </button>
  </div>
</div>

<div class="comment-wrapper">
    <div class="drag">
      <i class="material-icons">drag_indicator</i>
    </div>
    <div class="indicator">
      <span></span>
    </div>
 
  <div class="comment-content">
    <span class="badge">Order</span>
    <span>Lorem ipsum dolor sit amet.</span>
  </div>
  <div class="actions">
   <button class="action">
      <i class="material-icons">edit</i>
   </button>
   <button class="action">
      <i class="material-icons">delete</i>
   </button>
  </div>
</div>
<div class="comment-wrapper">
    <div class="drag">
      <i class="material-icons">drag_indicator</i>
    </div>
    <div class="indicator">
      <span></span>
    </div>
 
  <div class="comment-content">
    <span class="badge">Order</span>
    <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</span>
  </div>
  <div class="actions">
   <button class="action">
 ...

CSS

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    padding: 40px;
  }

.material-icons {
  font-size: 18px!important;
  color: #666666;
}
.comment-wrapper {
  padding: 5px;
  display: flex;
  width: 100%;
  min-height: 30px;
}
.comment-wrapper:hover {
  background-color: #F5F5F5;
  background-color: #eeeeee;
}


.drag {
  height: 18px;
  width: 18px;
  display: block!important;
  cursor: move;
  margin-top: 1px;
  margin-right: 4px;
}
.drag > i {
  color: #999999!important;
}
.indicator {
  flex-shrink: 0;
  height: 20px;
  display: flex;
  margin-right: 8px;

}
.indicator > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #38A938;
  flex-shrink: 0;
  display: block;
  align-self: center;
}

.badge {
  color: #ffffff;
  background-color: #58ADE0;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
  padding: 2px 7px 3px 7px;
  border-radius: 3px;

}
.comment-content {
  margin-right: auto;
}
.actions {
  width: 60px;
  flex-shrink: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin-left: 4px;
}
.action {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: none;
  display: none;
  background-color: transparent!important;

}
.action > i {
    color: #266268!important;
}

.action:hover {
  background-color: #ddd!important;
}

.comment-wrapper:hover .action {
  display: block;
}


.gary-bg {
  width: 100%;
  padding: 20px;
  background-color: #f4f4f4;
  margin-top: 50px;
}

.gary-bg .comment-wrapper:hover {
  background-color: #eee;
}