আমি https://stackoverflow.com/a/17845473/189411 এর একটি রূপ তৈরি করেছি
আপনি "চেক" আকারের ন্যূনতম এবং সর্বাধিক বাক্সের আকারের ক্ষেত্রে ন্যূনতম এবং সর্বাধিক পাঠ্যের আকার সেট করতে পারেন। এছাড়াও আপনি যেখানে টেক্সট আকার প্রয়োগ করতে চান তার চেয়ে আলাদা ডোম উপাদানটির আকার পরীক্ষা করতে পারেন।
আপনি # আকার -2 উপাদানের উপর 19px এবং 25px এর মধ্যে পাঠ্যকে আকার দিন, 500px এবং # আকার -2 উপাদানটির 960px প্রস্থের উপর ভিত্তি করে
resizeTextInRange(500,960,19,25,'#size-2');
আপনি শরীরের উপাদানগুলির 500px এবং 960px প্রস্থের উপর ভিত্তি করে # আকার -1 উপাদানটিতে 13px এবং 20px এর মধ্যে পাঠ্যকে পুনরায় আকার দিন
resizeTextInRange(500,960,13,20,'#size-1','body');
সম্পূর্ণ কোডটি এখানে রয়েছে https://github.com/kiuz/sandbox-html-js-css/tree/gh-pages/text-resize-in-range-of-text-and-screen/src
function inRange (x,min,max) {
return Math.min(Math.max(x, min), max);
}
function resizeTextInRange(minW,maxW,textMinS,textMaxS, elementApply, elementCheck=0) {
if(elementCheck==0){elementCheck=elementApply;}
var ww = $(elementCheck).width();
var difW = maxW-minW;
var difT = textMaxS- textMinS;
var rapW = (ww-minW);
var out=(difT/100)*(rapW/(difW/100))+textMinS;
var normalizedOut = inRange(out, textMinS, textMaxS);
$(elementApply).css('font-size',normalizedOut+'px');
console.log(normalizedOut);
}
$(function () {
resizeTextInRange(500,960,19,25,'#size-2');
resizeTextInRange(500,960,13,20,'#size-1','body');
$(window).resize(function () {
resizeTextInRange(500,960,19,25,'#size-2');
resizeTextInRange(500,960,13,20,'#size-1','body');
});
});
<meta name="viewport" content="width=device-width" />
এছাড়াও আপনি আরও 'প্রতিক্রিয়াশীল' অনুভূতিরmax-width
পরিবর্তে ব্যবহার করতে পারেনmax-device-width
।