私は、すべてのデバイスでほぼ同じように見えるサイトに取り組んでいます。つまり、ラップトップ、PC、iPad、iPhone、その他のスマートフォンです。
ユーザーの画面解像度に応じてウェブサイトのフォントサイズを縮小/拡大するために、純粋なjavascriptであるfittext.jsを使用しています。
ただし、iPhone などのデバイスではフォントが非常に小さいです。
iPhone やその他のスマートフォンでフォント サイズをもう少し大きくするにはどうすればよいですか?
これは私が使用しているJavaScriptコードです:
fittext.js
(function(){
var css = function (el, prop) {
return window.getComputedStyle ? getComputedStyle(el).getPropertyValue(prop) : el.currentStyle[prop];
};
var addEvent = function (el, type, fn) {
if (el.addEventListener)
el.addEventListener(type, fn, false);
else
el.attachEvent('on'+type, fn);
};
window.fitText = function (el, kompressor) {
var settings = {
'minFontSize' : -1/0,
'maxFontSize' : 1/0
};
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);
};
if (el.length)
for(var i=0; i<el.length; i++)
fit(el[i]);
else
fit(el);
// return set of elements
return el;
};
})();
これは私のHTMLページにあります:
<script src="fittext.js"></script>
<script type="text/javascript">
fitText(document.getElementById('fittext'), 2.9)
</script>