Existe-t-il un moyen syntaxique dans jQuery pour définir plusieurs attributs CSS sans enchaîner tout à droite comme ceci:
$("#message").css("width", "550px").css("height", "300px").css("font-size", "8pt");
Si vous en avez, disons, 20, votre code deviendra difficile à lire, des solutions?
À partir de l'API jQuery, par exemple, jQuery comprend et renvoie la valeur correcte pour les deux
.css({ "background-color": "#ffe", "border-left": "5px solid #ccc" })
et
.css({backgroundColor: "#ffe", borderLeft: "5px solid #ccc" }).
Notez qu'avec la notation DOM, les guillemets autour des noms de propriété sont facultatifs , mais avec la notation CSS, ils sont requis en raison du trait d'union dans le nom.
font-size
-à- dire , et il échouera. S'il s'agit de prouver les limites, elles sont$('div').css({ width : 300, height: 40 });
également valables.For example, jQuery understands and returns the correct value for both .css({ "background-color": "#ffe", "border-left": "5px solid #ccc" }) and .css({backgroundColor: "#ffe", borderLeft: "5px solid #ccc" }). Notice that with the DOM notation, quotation marks around the property names are optional, but with CSS notation they're required due to the hyphen in the name.
Passez-le comme un objet:
http://docs.jquery.com/CSS/css#properties
la source
la source
width: 550
est parfaitement valable.fontSize
sans guillemets ... ma question est cependant .... comment définissez-vousheight
, etwidth
, disons ... à la même valeur .... serait-ce.css({ { width, height} : 300 })
?var x = 100; $el.css({width: x, height: x});
À l'aide d'un objet simple, vous pouvez associer des chaînes qui représentent des noms de propriété avec leurs valeurs correspondantes. Changer la couleur d'arrière-plan et rendre le texte plus audacieux, par exemple, ressemblerait à ceci:
Alternativement, vous pouvez également utiliser les noms de propriété JavaScript:
Plus d'informations peuvent être trouvées dans la documentation de jQuery .
la source
veuillez essayer ceci,
la source
Vous pouvez également utiliser
attr
avecstyle
:la source
D'accord avec redsquare mais il convient de mentionner que si vous avez une propriété de deux mots comme
text-align
vous le feriez:la source
En outre, il peut être préférable d'utiliser la fonction intégrée de jQuery
addClass
pour rendre votre projet plus évolutif.Source: Comment: jQuery Ajouter CSS et supprimer CSS
la source
Essaye ça
la source
Scénario
Html
la source
Vous pouvez essayer ceci
la source
Meilleure façon d'utiliser la variable
la source
si vous souhaitez modifier plusieurs attributs css, vous devez utiliser la structure d' objet comme ci-dessous:
mais cela empire lorsque nous voulons changer beaucoup de style , donc ce que je vous suggère est d'ajouter une classe au lieu de changer css en utilisant jQuery, et ajouter une classe est aussi plus lisible.
voir l'exemple ci-dessous:
CSS
jQuery
Un avantage de ce dernier exemple par rapport à l'ancien est que si vous voulez ajouter du CSS
onclick
de quelque chose et que vous voulez supprimer ce CSS au deuxième clic, dans ce dernier exemple, vous pouvez utiliser.toggleClass('custom-class')
où dans l'exemple précédent, vous devez définir tous les CSS avec des valeurs différentes que vous avez définies auparavant et ce sera compliqué, donc l'utilisation de l'option de classe sera une meilleure solution.
la source
Vous pouvez utiliser
La meilleure façon est d'utiliser $ ('selector'). AddClass ('custom-class') et
la source