<div class="parent">

  <div class="colors">
    <span>Choose color</span>
  </div>

  <div class="drop">

    <div class="drop-item flex1">
      <div class="drop-item_flex flex1">
        <img src="http://placehold.it/130x60/ff0" alt="">
        <span>All Green1</span>
      </div>
    </div>

    <div class="drop-item flex2">
      <div class="drop-item_flex">
        <img src="http://placehold.it/130x60/00f" alt="">
        <span>All Green2</span>
      </div>
    </div>

    <div class="drop-item flex3">
      <div class="drop-item_flex">
        <img src="http://placehold.it/130x60/0f0" alt="">
        <span>All Green3</span>
      </div>
    </div>

    <div class="drop-item flex4">
      <div class="drop-item_flex">
        <img src="http://placehold.it/130x60/000" alt="">
        <span>All Green4</span>
      </div>
    </div>

    <div class="drop-item flex5">
      <div class="drop-item_flex">
        <img src="http://placehold.it/130x60/ffa" alt="">
        <span>All Green5</span>
      </div>
    </div>

    <div class="drop-item  flex6">
      <div class="drop-item_flex">
        <img src="http://placehold.it/130x60/fcf" alt="">
        <span>All Green6</span>
      </div>
    </div>

    <div class="drop-item flex7">
      <div class="drop-item_flex ">
        <img src="http://placehold.it/130x60/ccf" alt="">
        <span>All Green7</span>
      </div>
    </div>

  </div> <!-- drop -->
</div> <!-- parent-->

<div class="result"></div>
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

img {
  display: block;
}

.parent {
  max-width: 640px;
  border: 1px solid #999;
  height: 80px;
  margin: 20px;
}

.drop {
  overflow-y: auto;
  height: 320px;
  visibility: hidden;
  transition: 0.14s ease 0.3s;
}

.parent:hover {
  height: auto;
}
.parent:hover .drop {
  visibility: visible;
}

.colors {
  height: 80px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  padding-left: 20px;
  border-bottom: 1px solid #999;
}

.colors .drop-item {
  margin-top: 5px;
  padding-left: 0px;
}

.colors .drop-item img {
  margin-left: 0px;
}

.drop-item {
  height: 80px;
  cursor: pointer;
  padding: 10px 5px 0 20px;
}

.drop-item:hover {
  background: rgba(0, 0, 0, 0.1);
}

.drop-item_flex {
  display: flex;
  align-items: center;
  box-sizing: border-box;
}

.drop-item_flex img {
  margin-right: 20px;
}
document.querySelector(".drop").addEventListener("click", function (e) {
  e = event.target.closest(".drop-item").innerHTML;
  document.querySelector(".colors").innerHTML = e;
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.