2

基本的にbgColorクラスのオンとオフを切り替えて、最初のボタンクリックで背景が黒に変わり、2回目のクリックでデフォルトの空のクラスに戻るようにするこのスクリプトがあります。私が理解しようとしているのは、Opera 9.64で、ボタンを3回クリックすると、背景が黒のままで、ボタンの周りの背景だけが色を変える理由です。

<style>
.bgColor {background-color: #000000}
</style>

<button id="button">Change Class</button>

<script>
function changeBodyClass() {
    var body = document.body;
    if (body.className === "bgColor") {
        body.className = "";
    } else {
        body.className = "bgColor";
    }
}

document.getElementById("button").onclick = changeBodyClass;
</script>

ありがとう。

4

1 に答える 1

1

Operaのサイズを変更すると(強制的に再描画する)、すべての背景が期待どおりに白で表示されるため、レンダリングの問題があるようです。

このようなものをCSSに追加して、Operaに本体が実際にビューポートと同じサイズであると思わせることができます。

html {margin: 0; height: 100%}
body {margin: 0; height: 100%}
于 2009-05-30T14:50:51.967 に答える