我检测用户是否安装了Calibri:
$(document).ready(function() {
var cWidth = $('.calibri').width();
var aWidth = $('.arial').width();
if (cWidth == aWidth){
//No Calibri installed
}
});
如何找到定义字体大小的类,然后将它们减少20%?
答案 0 :(得分:1)
你应该使用CSS:
body {font-size:80%}
试图在客户端上精确控制字体是一个愚蠢的游戏;你将花费大量时间尝试最终失败。如果存在一些邪恶的黑客强制你的确切字体,它会有什么真正的价值?网页是文件,而不是电影海报。将您的字体设置为通用族,然后继续。
body {font-family:sans-serif}
答案 1 :(得分:0)
假设您的javascript链接正在发挥作用,完成它是设置我相信的尺寸(如果我理解正确),这是应该工作的:
$(document).ready(function() {
var cWidth = $('.calibri').width();
var aWidth = $('.arial').width();
if (cWidth == aWidth){
$('div, span, input, p, h1, h2 ...etc ').each(function(i) { /* This is suspect, it needs to
select all tags*/
if($(this).css('font-size').length) {
var currentSize = parseInt($(this).css('font-size'));
var newSize = currentSize * .8;
$(this).css('font-size', newSize + " <unit> ");
}
});
}
});
这是值得怀疑的,但可能会让你更接近你想要的东西。
编辑,主要的大脑屁,你必须在获得元素后检查font-size
。这仍然可能不完美(无法测试),但想法是你需要检查$(this).css('font-size')
希望这会有所帮助。我想的越多,这是一个非常糟糕的事情。