更改外部CSS不会反映在DOM中

时间:2017-11-03 09:44:40

标签: javascript jquery css css3

我在页面中有一些元素。它基于CSS创建。我通过使用JavaScript将链接标记附加到头部来动态更改样式表。链接标记完美附加。但我的问题是在元素创建时没有加载样式表。所以我的计算都错了。在我的所有过程完成后,样式表最后被加载。 有没有办法改变样式表会反映DOM ???

我在这个页面中有一个div元素(" sat")。

HTML文件

$(function () {
    $('head').append($('<link href="default.css" rel="stylesheet"/>')); // insert style sheet as a link tag
    var ht = $("#sat").height();
    $("#sat").height(ht+200);    
});

CSS文件

.dummy {
   height: 100px;
   background-color: red;
}

div元素显示高度为200px而不是300px。由于在计算时未加载css

1 个答案:

答案 0 :(得分:0)

如果您确实需要动态加载CSS,请插入带有link的{​​{1}}标记,然后在单独的函数中继续处理。