javascript - 不同浏览器之间的文字高度

标签 javascript

我做了一个简单的例子,尝试获取字符串的高度。

jQuery(function () {
    var jqSpan = $('span');
    jqSpan.css({
        'font-family': 'Arial',
        'font-size': '24px',
        'font-weight': 'bold'
    });
    $('#result').text(jqSpan[0].offsetHeight);
});

http://jsfiddle.net/DCBP9/1/

我发现不同浏览器之间的值是不同的。我已经使用了 reset.css,但它的值仍然不一样。

例如:(Mac)
在我的示例中,Chrome 是 27,Firefox 是 28,Opera 是 25,Safari 是 27

我知道每个浏览器都有自己的渲染引擎,但我想知道是否可以让它们完全相同。

最佳答案

您需要添加“行高”属性。但问题是你需要将它设置为 block 项目。在这种情况下,您将始终获得相同的高度。

请参阅此处示例:http://jsfiddle.net/dDat4/2/

jQuery(function () {
var jqSpan = $('p');
jqSpan.css({
    'font-family': 'Arial',
    'font-size': '24px',
    'font-weight': 'bold',
    'line-height': '28px'
});
$('#result').text(jqSpan[0].offsetHeight);

});

关于javascript - 不同浏览器之间的文字高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14954549/

相关文章:

javascript - 事件链接适用于页面刷新但不适用于滚动?

javascript - Gulp Browserify 中的标准错误日志

php - 使用 javascript 从 php 获取变量

javascript - 在更新快速移动的 UI 状态时,如何提高 Redux 的性能?

javascript - MaterializeCSS 日期选择器 : setDate does not update the view

javascript - 如何使链接在 Twitter 推文中起作用? API + JSON

javascript - 将html文件作为innerHTML的值传递

javascript - 使用输入中的值并将其设置为 URL

javascript - 您可以将 Angular 服务作为参数传递给另一个 Angular 服务提供的函数吗?

javascript - PHP + jQuery : Apply datepicker to inputs with specific pattern