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必须在页面加载后运行。这是书签的一部分