我正在尝试创建一个站点范围的字体大小调整器,但是大多数实现似乎都希望我按ID或类(而不是站点范围)来定位元素。

我试图通过设置以以下CSS开头的页面来完成任务:


html = 83%
正文,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td等... = 1em


然后,我有一些jquery可以获取当前应用的font-size,将其增大并重新应用。

但是它不能在IE8或IE7中使用。 (震惊)

var currentFontSize = $('html').css('font-size');
var currentFontSizeNum = parseFloat(currentFontSize, 10);
var newFontSize = currentFontSizeNum*1.05;
$("html").css('cssText', 'font-size: ' + newFontSize + 'px !important');


如果我用console.log登出这些值,则在这些浏览器中可以正常运行,但是在这些浏览器中似乎存在相对字体大小的问题。我还尝试将所有内容重置为100%,而不是1em,但这也不起作用。

示例jsfiddle(但是此站点在ie8或更低版本中无法工作.....)

最佳答案

您要应用的尺寸没有任何单位。将px添加到大小:

$('html').css('font-size', newFontSize + 'px');




旁注:parseFloat函数不使用任何基数参数:

var currentFontSizeNum = parseFloat(currentFontSize);

关于javascript - javascript font-reizer在IE8或IE7中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15975809/

10-12 19:03