2016-06-17 11 views
-2

Ich versuche, mehrere Attribute zu einem Formular zu setzen. Ich möchte, dass die Form zentriert und der Hintergrund orange ist. Aber nur das letzte Attribut wird ausgeführt. Im folgenden Code wäre die Hintergrundfarbe also orange, aber die Form wäre nicht zentriert.Nur das letzte setAttribute wird ausgeführt

Hier ist mein Code:

<!DOCTYPE html> 
<html> 
<body> 

    <form id="form"> 
     First Name:<br> 
     <input type="text" name="firstname"> 
     <br> 
     Last name:<br> 
     <input type="text" name="lastname"> 
     </form> 
    <script> alert("ahhhhhh"); 
    var form = document.getElementById("form"); 
    form.setAttribute("style", "background-color: orange"); 
    form.style.align = "center"; 
    form.style.backgroundColor = "orange"; 


    </script> 
</body> 
</html> 

jemand könnte mir sagen, warum dies geschieht und wie mutliple Attribute auf ein Element? Vielen Dank!

+0

Verwenden Sie '.setAttribute (" style "' nicht, wenn es keinen Grund dafür gibt. – Oriol

+0

Eine bessere Möglichkeit, dies zu tun, ist eine Klasse festzulegen, anstatt jede CSS-Eigenschaft direkt festzulegen. –

Antwort

2

align ist keine gültige CSS-Eigenschaft. Sie benötigen etwas wie textAlign oder margin auf 0 auto in diesem Fall gesetzt

1

Es gibt keine CSS align Eigenschaft. Deshalb denken Sie, dass der Code nicht ausgeführt wird. Sie versuchen wahrscheinlich, die textAlign Eigenschaft festzulegen.

Beachten Sie, dass das Verwenden von JavaScript-Elementen eine schlechte Übung ist, da der Code dadurch weniger wartbar wird. Wenn die Stile bedingt über JavaScript angewendet werden sollen, können Sie stattdessen CSS-Klassen hinzufügen und entfernen.

Verwandte Themen