(function (doc, win) { // Does browser support addEventListener? if (!doc.addEventListener) return; // Does browser support rem? var div = doc.createElement('div'); div.setAttribute('style', 'font-size: 1rem'); if (div.style.fontSize != "1rem") return; var html = doc.documentElement, recalc = function () { var clientWidth = html.clientWidth; if (!clientWidth) return; html.style.fontSize = ((clientWidth / 1000) * 75) + '%'; html.clientWidth; // Force relayout - important to new Android devices html.style.display = ""; }; win.addEventListener('resize', recalc, false); doc.addEventListener('DOMContentLoaded', recalc, false); })(document, window); document.addEventListener('DOMContentLoaded', function () { }, false);