JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://modernizr.com/downloads/modernizr-latest.js"></script>
<a href="" class="button">
  <span class="icon icon-note"></span>
  <span class="text">calendar</span>
</a>

CSS

a.button {
    width: 80px;
    height: 80px;
    border: 1px solid #ccc;
    margin: 0px 5px;
    display:inline-block;
    border-radius: 10px;
    background:white; text-decoration:none;
    box-shadow: inset 0 0 15px rgba(0,0,0, 0.25);
    -moz-box-shadow: inset 0 0 15px rgba(0,0,0, 0.25);
    -webkit-box-shadow: inset 0 0 15px rgba(0,0,0, 0.25);
    text-align: center;
    font-family: 'verdana';
    font-size: 10px;
    color: #666;
}

.cssmasks .icon {
    width: 60px;
    height: 60px;
    margin: 0 auto;
    background-color: #ffcc33;
    display: inline-block;
}
.no-cssmasks .icon {
    width: 60px;
    height: 60px;
    margin: 0 auto;
    display: inline-block;
    background-image: url('http://i.cubeupload.com/VvBVjp.png'); 
}
.cssmasks .icon-note{
    -webkit-mask-image: url('http://i.cubeupload.com/VvBVjp.png'); 
}

JavaScript

if ( document.body.style[ '-webkit-mask-repeat' ] !== undefined || document.body.style[ 'mask-repeat' ] !== undefined) {
  Modernizr.cssmasks = true;
  $('html').addClass('cssmasks');
} else {
  Modernizr.cssmasks = false;
  $('html').addClass('no-cssmasks');
}