2

JavaScript が有効か無効かによってスタイルを変えたいページがあります。

コード:

<link rel="stylesheet" href="./css/main.css" type="text/css" />

<noscript>
    <link rel="stylesheet" href="./css/noscript.css" type="text/css" />
</noscript>

私の問題は、 noscript.css がすべてではなく一部の属性のみを上書きすることです。したがって、main.css にはより多くのスタイルが含まれているため、それも適用されます。上書きされたスタイルのみが見栄えがします。main.css へのリンクを削除すると、ページは希望どおりに表示されます。

以前のスタイルをすべてデフォルトに「リセット」する方法、または noscript で main.css へのリンクを無効にする方法はありますか?

ありがとうございました!

4

3 に答える 3

6

あなたはこれを行うことができます:

<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>

私は通常、 の大ファンではありませんdocument.write()が、これは最も簡単なことの例です。もちろん、<link>タグを作成してに追加することもできますが、<head>あまりにも不快な場合は何でも。

于 2012-06-25T21:56:10.743 に答える
0
var css = document.createElement('link');
css.rel = 'stylesheet';
css.type = 'etxt/css';
css.href = './css/main.css';
document.head.appendChild(css);
于 2012-06-25T22:19:19.360 に答える