<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;
});
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.