javascript加载css但保持当前样式

javascript加载css但保持当前样式,javascript,jquery,css,Javascript,Jquery,Css,我有以下代码在页面加载后运行: function prepare_bootstrap() { console.log("Preparing bootstrap..."); var items = document.body.getElementsByTagName("*"); for (var i = items.length; i--;) { items[i].style.cssText = '!important'; } v

我有以下代码在页面加载后运行:

function prepare_bootstrap()
{
    console.log("Preparing bootstrap...");
    var items = document.body.getElementsByTagName("*");
    for (var i = items.length; i--;)
    {
        items[i].style.cssText = '!important';
    }


    var style1 = document.createElement("link");
    style1.rel = "stylesheet";
    style1.href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css";
    document.body.appendChild(style1);

    var style2 = document.createElement("link");
    style2.rel = "stylesheet";
    style2.href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css";
    document.body.appendChild(style2);

    var script = document.createElement("script");
    script.src = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js";
    script.onload = script.onreadystatechange = function()
    {
        if (!this.readyState || this.readyState == "loaded" || this.readyState == "complete")
        {
            prepare_bootstrapdialog();
        }
    };
    document.body.appendChild(script);
}
我正在加载引导以允许格式良好的弹出窗口。 然而,引导覆盖了几乎所有内容,使页面看起来一团糟。 我试着让每一种风格都变得重要,但说实话,我不知道我在做什么

有没有办法使css不覆盖以前的css? 谢谢


编辑:如前所述,不可能先加载引导,因为javascript是bookmarklet的一部分。

您应该先加载引导样式表,这样之后链接的任何样式表都将覆盖引导的

这是利用CSS的一部分

请参见

了解以下内容:

不过,它只能在某些浏览器中工作,因此对于面向公众的网站来说,它不是一个选项。做到这一点的最好方法是不只是完整地包含引导,而是选择您需要的部分并使用它们。您可以在此处获得引导的自定义版本:


你真的不应该只加载你没有积极使用的css样式。如果您遇到样式问题,这样做会为您带来更多调试工作,也意味着您可能在浪费带宽。

首先加载引导,然后加载样式您完全误解了!重要。尽量不要使用!重要的是的,但是我不能。javascript必须在页面加载后运行。这是书签的一部分