<!-- EMMET STRING: nav>ul#menu>(li{[ MENU ITEM ]}*5)^^section#text>h1{YES!!}^section#paragraph({[ LOREM IPSUM ]}*60) -->
<nav><ul id="menu">
<li>Home</li>
<li>Why Yes!!?</li>
<li>Maybe?</li>
<li>No :(</li>
<li class="double">Our Blog to be read</li>
</ul></nav>
<section id="text"><h1>YES!!</h1></section>
<section id="paragraph">
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Fringilla phasellus faucibus scelerisque eleifend donec. Leo duis ut diam quam nulla. Interdum posuere lorem ipsum dolor sit amet consectetur adipiscing elit. Fermentum iaculis eu non diam phasellus. Tristique sollicitudin nibh sit amet commodo. Cras ornare arcu dui vivamus arcu felis bibendum ut tristique. Risus viverra adipiscing at in tellus. Mi sit amet mauris commodo. Fermentum leo vel orci porta non pulvinar. Tellus rutrum tellus pellentesque eu tincidunt tortor. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus. Euismod elementum nisi quis eleifend quam adipiscing. Amet porttitor eget dolor morbi non arcu risus. Malesuada proin libero nunc consequat interdum varius sit amet mattis.
</section>
/*!
* FitText.js 1.0 jQuery free version
*
* Copyright 2011, Dave Rupert http://daverupert.com
* Released under the WTFPL license
* http://sam.zoy.org/wtfpl/
* Modified by Slawomir Kolodziej http://slawekk.info
*
* Date: Tue Aug 09 2011 10:45:54 GMT+0200 (CEST)
*/
(function(){
var addEvent = function (el, type, fn) {
if (el.addEventListener)
el.addEventListener(type, fn, false);
else
el.attachEvent('on'+type, fn);
};
var extend = function(obj,ext){
for(var key in ext)
if(ext.hasOwnProperty(key))
obj[key] = ext[key];
return obj;
};
window.fitText = function (el, kompressor, options) {
var settings = extend({
'minFontSize' : -1/0,
'maxFontSize' : 1/0
},options);
var fit = function (el) {
var compressor = kompressor || 1;
var resizer = function () {
el.style.fontSize = Math.max(Math.min(el.clientWidth / (compressor*10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize)) + 'px';
};
// Call once to set.
resizer();
// Bind events
// If you have any js library which support Events, replace this part
// and remove addEvent function (or use original jQuery version)
addEvent(window, 'resize', resizer);
addEvent(window, 'orientationchange', resizer);
};
if (el.length)
for(var i=0; i<el.length; i++)
fit(el[i]);
else
fit(el);
// return set of elements
return el;
};
})()
window.onload = function(){
window.fitText(document.getElementById("text"), 0.55)
window.fitText(document.getElementById("paragraph"), 1.9, {'minFontSize' : 16, 'maxFontSize' : 26})
for (var menu_item of document.getElementById('menu').getElementsByTagName('li'))
window.fitText(menu_item, 0.65, {'minFontSize' : 12})
}
Please Whitelist JSFiddle in your content blocker.
Help keep JSFiddle free for always by one of two ways:
Whitelist JSFiddle in your content blocker (two clicks)
Go PRO and get access to additional PRO features →
Join the 4+ million users, and keep the JSFiddle dream alive.
Ad-free
All ads in the editor and listing pages are turned completely off.
Use pre-released features
You get to try and use features (like the Palette Color Generator) months before everyone else.
Fiddle collections
Sort and categorize your Fiddles into multiple collections.
Private collections and fiddles
You can make as many Private Fiddles, and Private Collections as you wish!
Console
Debug your Fiddle with a minimal built-in JavaScript console.