I always found it strange that when you set the font size to 50% in css, letters don't take 50% of the width of the page.
This script makes text behave in that way.
I always found it strange that when you set the font size to 50% in css, letters don't take 50% of the width of the page.
This script makes text behave in that way.
onresize=onload=function(){document.body.style.fontSize=window.innerWidth+"px"} |
onresize=onload=function(){document.body.style.fontSize=window.innerWidth+"px"} |
{ | |
"name": "textPercentagr", | |
"description": "This script makes font size behave like boxes when set in percents", | |
"keywords": [ | |
"css", | |
"fluid", | |
"responsive", | |
"text", | |
"font" | |
] | |
} |
<!DOCTYPE html> | |
<script> | |
onresize=onload=function(){document.body.style.fontSize=window.innerWidth+"px"} | |
</script> | |
<body> | |
<style> | |
img{width:45%;float:left;margin:5%} | |
body{margin:5%} | |
</style> | |
<h1 style="font-size:6%">This is a big heading!!!!!!</h1> | |
<p style="font-size:3%;text-align:justify"> | |
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue libero nec nunc condimentum vitae scelerisque nulla bibendum. Praesent eu tellus lectus, eu malesuada magna.<img src="http://images4.fanpop.com/image/photos/19500000/Red-Pandas-the-alliance-of-red-panda-believers-19591990-1024-768.jpg"> Fusce cursus, mauris eu fermentum pretium, dolor eros ultricies neque, a venenatis turpis sem at odio. Morbi vitae odio at metus tristique ornare. Nulla consectetur cursus luctus. Vivamus nec iaculis risus. Donec vel risus ac mi eleifend eleifend sit amet eu orci. Duis consequat nunc eleifend dolor tincidunt egestas. Phasellus at lacus orci. Etiam euismod suscipit ante eu tempor. Vestibulum sed urna et purus dignissim hendrerit. Nam eu dignissim ligula. Ut imperdiet pretium magna non pellentesque. Aliquam vel lacus eros. | |
</p> |
i want to use it on my specific div i want to change the size of text inside the specific div, how to do this?
We need a small refinement to make it work.
var fudgeFactor = 24 / 1920; // defines the size of the body text for the maximum screen width
function fontFix() {
var width = window.innerWidth || document.documentElement.clientWidth;
document.body.style.fontSize = Math.max(14, fudgeFactor * width ) + "px";
};
window.addEventListener('resize', fontFix);
window.addEventListener('load', fontFix);