如您所知,em是一种相对字体测量,其中一个em等于默认字体大小中字母"M"的高度.使用它的一个优点是因为您可以调整文本大小.
但是如何使用JavaScript或JQuery获取当前环境的默认字体大小(以像素为单位)?
问候,
是否可以检测浏览器字体大小?当用户从菜单选择中更改字体大小时,还可以设置新的字体大小吗?非常感谢大家的帮助.最好的祝福.
该功能改编自网站:http://eriwen.com/javascript/measure-ems-for-layout/
function getEmSize(el) {
var tempDiv = document.createElement("div");
tempDiv.style.height = "1em";
el.appendChild(tempDiv);
var emSize = tempDiv.offsetHeight;
el.removeChild(tempDiv);
return emSize;
}
Run Code Online (Sandbox Code Playgroud)
我正在运行此函数作为window.resize上另一个函数的一部分,它导致Firefox 3.6上的性能问题在当前的Safari或Chrome上不存在.Firefox的分析师说我花了大部分时间在这个功能上,我很好奇为什么会这样.
有没有办法在不完成所有这些工作的情况下在javascript中获取em大小?我想在重新调整大小时重新计算用户更改它的大小.
如何使该代码与em值一起使用?
$(window).scroll(function() {
if ($(window).scrollTop() > 100) {
$('#scroller').css('top',$(window).scrollTop());
}
});
Run Code Online (Sandbox Code Playgroud)
我想让 100 变成 10em,我该怎么做?
css ×3
font-size ×3
javascript ×2
jquery ×2
browser ×1
firefox ×1
fonts ×1
html ×1
performance ×1
scrolltop ×1