Edit in JSFiddle

/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
 * Build: http://modernizr.com/download/#-cssclasses-addtest-teststyles
 */
;window.Modernizr=function(a,b,c){function v(a){j.cssText=a}function w(a,b){return v(prefixes.join(a+";")+(b||""))}function x(a,b){return typeof a===b}function y(a,b){return!!~(""+a).indexOf(b)}function z(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:x(f,"function")?f.bind(d||b):f}return!1}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,l={}.toString,m={},n={},o={},p=[],q=p.slice,r,s=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["&#173;",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},t={}.hasOwnProperty,u;!x(t,"undefined")&&!x(t.call,"undefined")?u=function(a,b){return t.call(a,b)}:u=function(a,b){return b in a&&x(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=q.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(q.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(q.call(arguments)))};return e});for(var A in m)u(m,A)&&(r=A.toLowerCase(),e[r]=m[A](),p.push((e[r]?"":"no-")+r));return e.addTest=function(a,b){if(typeof a=="object")for(var d in a)u(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},v(""),i=k=null,e._version=d,e.testStyles=s,g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+p.join(" "):""),e}(this,this.document);

// Detects if the browser is wrongly adding padding to min-height
// by Volker Rose | @riddla
// http://volker-rose.de/blog/box-sizing-and-min-height-css-trouble-within-firefox/
// http://jsfiddle.net/riddla/4bP73/
Modernizr.testStyles('#modernizr { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; min-height: 100px; padding-top: 10px; position: absolute; top: -2000em; }', function(elem, rule){
    Modernizr.addTest('padding-added-to-minheight', elem.scrollHeight === 110);
});
<p id="padding-added-to-minheight">Your Browser adds padding to min-height :(</p>
<p id="no-padding-added-to-minheight">Your Browser doesn't add padding to min-height, good boy :)</p>

<div class="box"><span>This box has a height of 100px</span></div>
<div class="box" id="box"><span>This box should also have a height of 100px</span></div>
<div class="box" id="box-with-applied-fix"><span>This box has a fix applied</span></div>
* { font-family:sans-serif; }
body { text-align:center }

p {
    display:none;     
    padding:10px;
    color:#FFF;
    margin-bottom:2em;
}

#box-with-applied-fix,
.no-padding-added-to-minheight #box,
#no-padding-added-to-minheight { background:green; }

.padding-added-to-minheight #box,
#padding-added-to-minheight { background:red; }

.no-padding-added-to-minheight #no-padding-added-to-minheight,
.padding-added-to-minheight #padding-added-to-minheight { display:block; }

.box {
    box-sizing:border-box;
    margin:0;
    padding:0;
    background:#666;
    color:#FFF;
    height:100px;
    width:100px;
    display:inline-block;
    vertical-align:top;
    font-size:14px;
}

.box span { display:block; margin:10px; }

#box-with-applied-fix span,
#box span { margin-top:0; }

#box-with-applied-fix,
#box { padding:10px 0; }

.padding-added-to-minheight #box-with-applied-fix { height:80px; }