JSFiddle - React, Tailwind, and code Playground

HTML

<form>
    <a href="#" class="m-btn">Post comment</a>
    <input class="m-btn" type="submit" value="New Comment (submit)" />
    <button class="m-btn">New Comment (button)</button>
</form>
<form>
<a href="#" class="m-btn red">Color Red</a>
<a href="#" class="m-btn blue">Color Blue</a>
<a href="#" class="m-btn purple">Color Purple</a>
<a href="#" class="m-btn green">Color Green</a>
</form>
<form>
<a href="#" class="m-btn red-stripe">Red Stripe</a>
<a href="#" class="m-btn purple-stripe">Purple stripe</a>
<a href="#" class="m-btn green-stripe">Green Stripe</a>
<a href="#" class="m-btn blue-stripe">Blue stripe</a>
</form>
<form>
<a href="#" class="m-btn mini">Mini size</a>
<a href="#" class="m-btn sm">Default size</a>
<a href="#" class="m-btn big">Large size</a>    
</form>

CSS

.m-btn {
  position: relative;
  display: inline-block;
  overflow: visible;
  margin: 0;
  padding: 10px 14px;   
  margin-top: 8px;   
  cursor: pointer;
  outline: none;
  border: none; 
  background-color: #eeeeee;
  background-image: -moz-linear-gradient(top, #eeeeee, #eeeeee);
  background-image: -ms-linear-gradient(top, #eeeeee, #eeeeee);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#eeeeee), to(#eeeeee));
  background-image: -webkit-linear-gradient(top, #eeeeee, #eeeeee);
  background-image: -o-linear-gradient(top, #eeeeee, #eeeeee);
  background-image: linear-gradient(top, #eeeeee, #eeeeee);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#eeeeee', GradientType=0);
  -webkit-background-clip: padding;
  -moz-background-clip: padding;
  background-clip: padding;
  /* IE hacks */

  zoom: 1;
  z-index: 1;
  *display: inline;
  font-family: "Segoe UI", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 14px;
  color: #333333;
  min-width: 42px;
  
  text-shadow: #ffffff 0 1px 0;     
  text-align: center;  
  text-decoration: none;
  white-space: nowrap;
  
  vertical-align: inherit;
}
.m-btn:hover,
.m-btn:focus,
.m-btn:active,
.m-btn.active {
  color: #333;
  text-decoration: none;  
  background-color: #dcdcdc;
  background-image: -moz-linear-gradient(top, #dcdcdc, #dcdcdc);
  background-image: -ms-linear-gradient(top, #dcdcdc, #dcdcdc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#dcdcdc), to(#dcdcdc));
  background-image: -webkit-linear-gradient(top, #dcdcdc, #dcdcdc);
  background-image: -o-linear-gradient(top, #dcdcdc, #dcdcdc);
  background-image: linear-gradient(top, #dcdcdc, #dcdcdc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dcdcdc', endColorstr='#dcdcdc', GradientType=0); 
  z-index: 100;
  outline: none;
}
.m-btn:active, .m-btn.active {
  background-color: #eeeeee;
 ...