我正在尝试创建一个站点范围的字体大小调整器,但大多数实现似乎都希望我通过 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 可以获取当前应用的字体大小,增加它并重新应用它。
但它不适用于 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 out 这些值,它在那些浏览器中计算得很好,但在这些浏览器中似乎有一些关于相对字体大小的东西。我还尝试将所有内容重置为 100%,而不是 1em,但这也不起作用。
示例jsfiddle(但此站点不适用于 ie8 或更低版本.....)