为什么我不能在jQuery中使用.css()更改行高CSS属性?

时间:2014-02-11 17:00:35

标签: javascript jquery html css

我正在尝试使用jQuery更改line-height属性:

jQuery(document).ready(function () {
    var windowWidth = $(window).width();
    $('h1').css({
        'top': Math.floor(windowWidth * 0.0964) + 'px',
        'left': Math.floor(windowWidth * 0.0872) + 'px',
        'line-height': '0.9em !important'
    });
});

如果我使用检查器并检查元素样式,我可以看到顶部和左侧属性但不能看到行高,有人可以向我解释什么是错误的吗?

这就是我做的jsFiddle,以确保我不会疯狂! http://jsfiddle.net/p4DU6/4/

在FF,Chrome,IE8和IE9中测试

2 个答案:

答案 0 :(得分:2)

请勿使用!important。没有必要这样做。

如果删除它,它对我有用。

无论如何,您的内联样式将比CSS中的任何其他内容更高specificity,因此无需使用!important

答案 1 :(得分:1)

此处讨论:How to apply !important using .css()?

问题似乎是!重要声明。有一个关于jquery的bug报告以及解决它的方法,即创建新类并将它们组合起来:

http://bugs.jquery.com/ticket/11173