JSFiddle - React, Tailwind, and code Playground

by envira

HTML

<div class='sbutton'>
    <span>Share</span>
  <ul class='smenu'>
    <li><a href="">Facebook</a></li>
    <li><a href="">Twitter</a></li>
    <li><a href="">Google +</a></li>
  </ul>
</div>

CSS

body {
  background: #f5f7f9;
  font-family: Tahoma, Arial , sans-serif;
  text-align: center;
}

.sbutton {
 background-color: #E04006;
border-radius: 2px;
box-shadow: 0 3px 0 #9C4015;
color: #FFF;
display: inline-block;
padding: 6px 12px;
position: relative;
top: 150px;
}
.sbutton:hover {
  cursor: pointer;
}

.smenu {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  left: -20px;
  margin: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: 0px;
  -webkit-transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
  -moz-transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
}
.smenu:after {
  background-color: #FFF;
border-top: 1px solid #CCC;
border-left: 1px solid #CCC;
top: -7px;
content: '';
display: inline-block;
height: 10px;
left: 50px;
position: absolute;
width: 10px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg)
}
.smenu li {
  border-bottom: 1px solid #ccc;
  list-style-type: none;
  margin: 0;
  padding: 7px;
  width: 100px;
}
.smenu li:hover {
  background-color: #fafafa;
}
.smenu li:last-child {
  border-bottom: none;
}
.smenu li a {
  color: #E04006;
  text-decoration: none;
}
.smenu.share {
  opacity: 1;
  top: 45px;
}

JavaScript

$('.sbutton').on('click', function(event) {
  event.preventDefault();
  
  $('.smenu').toggleClass('share');
});