imola: Änderung CSS Eigenschaft funktioniert nicht mit <!DOCTYPE

Hallo Zusammen ich bin auf ein Merkwürdiges Problem gestoßen.
Per Javascript andere ich die Position eines Bildes einer in CSS für ein DIV definierten Hintergrundgrafik.

Funktioniert einwandfrei aber nur wenn ich am Anfang des Dokumentes dies weglasse:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Mir ist schleierhaft warum und würde mich freuen wenn jemand dazu eine Idee hat.

CSS:
#BILD {
display:block;
width:664px;
height:695px;
background: url(d.jpg) 0 0 no-repeat;z-index:1000;
}

--------------------------------------------------------------

JS:
function artikelbild(number)
{
if(number == 1) { document.getElementById("BILD").style.backgroundPosition = 0; }
if(number == 2) { document.getElementById("BILD").style.backgroundPosition = -664; }
}

--------------------------------------------------------------

HTML:
<div id="BILD"><a href="javascript:void(0);"></a></div>

Viele Grüße
Andreas

  1. Om nah hoo pez nyeetz, imola!

    Funktioniert einwandfrei aber nur wenn ich am Anfang des Dokumentes dies weglasse:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    Mir ist schleierhaft warum und würde mich freuen wenn jemand dazu eine Idee hat.

    ganz ähnliche Diskussion

    Matthias

    --
    1/z ist kein Blatt Papier.

  2. Yerf!

    if(number == 2) { document.getElementById("BILD").style.backgroundPosition = -664; }

    -664 was? Inch, Meter oder Seemeilen? Ohne den Doctype schalten die Browser in einen Quirksmode und raten, dass es wohl Pixel sein könnten...

    if(number == 2) { document.getElementById("BILD").style.backgroundPosition = "-664px"; }

    (bei "0" ist eine Einheit tatsächlich optional, da egal)

    Gruß,

    Harlequin

    --
    RIP --- XHTML 2
    nur die Besten sterben jung
  3. @@imola:

    nuqneH

    Funktioniert einwandfrei aber nur wenn ich am Anfang des Dokumentes dies weglasse:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    Das solltest du auf keinen Fall weglassen, weil Browser dann im Quirksmodus rendern.

    document.getElementById("BILD").style.backgroundPosition = -664; }

    "-664" ist kein gültiger Wert für die 'background-position'-Eigenschaft. [CSS2 §4.3.2]

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)