2017-01-19 6 views
0

ich die folgenden CSS-Regeln in der Datenbank setzen, die in Google Chrome gültig sind:CSS Hintergrund hat ungültige Eigenschaft Wert

background: url(/lib/editor/frames/6.1.png) center -7px/19mm 12mm no-repeat, url(/lib/editor/frames/6.2.png) center 0px/500mm 1.4mm no-repeat, linear-gradient(to right, rgb(255, 255, 255) 0%, rgb(211, 233, 203) 50%, rgb(255, 255, 255) 100%) center 5px/500mm 3.7mm no-repeat; 
background-color: white; 

Wenn ich versuche, dies mit JQuery zu einem div Regeln hinzuzufügen, diese Regel als einzige Regel verschmolzen und erhalten ungültigen Wert

background: url(/lib/editor/frames/6.1.png) center -7px/19mm 12mm no-repeat white, url(/lib/editor/frames/6.2.png) center 0px/500mm 1.4mm no-repeat white, linear-gradient(to right, rgb(255, 255, 255) 0%, rgb(211, 233, 203) 50%, rgb(255, 255, 255) 100%) center 5px/500mm 3.7mm no-repeat; 

Woher weiß ich, warum es ungültig ist?

+1

"Wie kann ich wissen, warum es ungültig ist?" Sie können herausfinden, indem Sie auf die Spezifikation verweisen. Hier ist, wo Sie suchen müssen: https://www.w3.org/TR/css3-background/#the-background – BoltClock

+0

Welche Version von Jquery verwenden Sie? – Soviut

+0

@Soviut Ich benutze die jQuery v1.9.1. –

Antwort

0

Wenn Sie dies als einen Fehler identifiziert haben, ist dies ein Fehler mit einer aktuellen Version von JQuery. Melden Sie ihn auf der Seite JQuery GitHub. Nicht hier.

Eine Problemumgehung wäre, das Attribut style einfach manuell festzulegen.

$('.whatever').attr('style', 'background: url(/lib/editor/frames/6.1.png) center -7px/19mm 12mm no-repeat, url(/lib/editor/frames/6.2.png) center 0px/500mm 1.4mm no-repeat, linear-gradient(to right, rgb(255, 255, 255) 0%, rgb(211, 233, 203) 50%, rgb(255, 255, 255) 100%) center 5px/500mm 3.7mm no-repeat; background-color: white;'); 
+0

Aber es * ist * ungültig. Der Hintergrundfarbenwert darf höchstens einmal vorkommen und muss sich in der letzten Ebene befinden (was bedeutet, dass die Hintergrundfarbe jeder anderen Ebene immer transparent ist, ohne sie angeben zu müssen). Was auch immer jQuery macht, ist ein Fehler und sollte als solcher behandelt werden. – BoltClock

+0

@Soviut Ihre Lösung hat ein Problem. bitte sieh diesen Link: http://jsfiddle.net/9qgpbryy/ –

+0

@NaserYousefi Ich habe meine Antwort aktualisiert, da dies wahrscheinlich ein Fehler ist. Melden Sie es auf Github dem JQuery-Repository, nicht hier. – Soviut

-1

Verwenden

background-image:url('url') 
Verwandte Themen