lin*_*dhe 2 html javascript css noscript
我有一个页面,我希望根据是否启用javascript来设置不同的样式.
码:
<link rel="stylesheet" href="./css/main.css" type="text/css" />
<noscript>
<link rel="stylesheet" href="./css/noscript.css" type="text/css" />
</noscript>
Run Code Online (Sandbox Code Playgroud)
我的问题是noscript.css只覆盖了一些属性,而不是全部.因此,由于main.css在其中具有更多样式,所以它也适用.只有被覆盖的样式看起来很好.如果我删除指向main.css的链接,页面看起来就像我想要的那样.
有没有办法将所有以前的样式"重置"为默认值,或禁用noscript上main.css的链接?
谢谢!
你可以这样做:
<script>
document.write('<link rel="stylesheet" href="./css/main.css" type="text/css" />');
</script>
<noscript>
<link rel="stylesheet" href="./css/noscript.css" type="text/css" />
</noscript>
Run Code Online (Sandbox Code Playgroud)
我通常不是一个忠实的粉丝document.write(),但这是最简单的事情.你当然可以创建<link>标签,<head>如果它太令人反感,可以将它附加到其他任何地方.