Was genau macht das Attribut enable-background?

104

Was genau macht das enable-backgroundAttribut?

Ich habe die Spezifikation gelesen, verstehe sie aber immer noch nicht.

Leos Ondra
quelle

Antworten:

110

Es soll das Hintergrundbild für untergeordnete Elemente des Elements verfügbar machen, für das es angegeben ist, z. B. für Filtereffekte, die Inhalte mit dem Hintergrund mischen. Es mag andere Verwendungszwecke geben, aber das ist die, die ich kenne.

Wenn Sie es nicht festgelegt haben, kann das Element technisch gesehen keine von Vorfahren erstellten Hintergründe verwenden.

Der einzige große Browser, der dies unterstützt, ist IE10 +, daher wird es nicht sehr häufig verwendet. (Es ist auch als Boilerplate in jedem Illustrator SVG-Export vorhanden - ohne guten Grund.)

Michael Mullany
quelle
3
Ich war nicht zu schockiert, als dies auf caniuse.com nicht war. Es war jedoch schockierend, dass die w3.org-Beispiele auf Chrome / Mac nicht funktionierten. Gehen Sie IE 10+, um endlich der Erste zu sein.
QueueHammer
64
Es ist veraltet, dh niemand wird es implementieren: w3.org/TR/filter-effects/#AccessBackgroundImage Illustrator hat es eher ruiniert, indem es überall platziert wurde, was bedeutet, dass ein UA es nicht so verwenden kann, wie es verwendet werden sollte. Das und die Tatsache, dass es so gut wie unmöglich war, die Spezifikation wie geschrieben umzusetzen, sorgten für ihren Niedergang.
Robert Longson
3
Ich wollte nur erwähnen, dass IE11 / Edge die Funktion weiterhin unterstützt, aber wir mussten die Unterstützung deaktivieren, wenn sie für das root-Element <svg> verwendet wurde, da Inkscape sie zu jeder Datei hinzufügte (was zu Perf-Problemen führte). Bis heute unterstützen andere Browser In1 / In2 = BackgroundImage jedoch nicht, nur IE und Edge.
FremyCompany
+1 für "Es ist auch als Boilerplate in jedem Illustrator SVG-Export vorhanden - ohne guten Grund." - fragte sich, ob ein Kollege dieses Attribut in diesem Fall hinzufügen würde; das erklärt es.
tremby
12

Wie von Robert Longson in den Kommentaren darauf hingewiesen , Attribut enable-backgroundist seit 2014 mindestens veraltet .

SVG 1.1 hat die Eigenschaft enable-background eingeführt. Die Eigenschaft definierte den Hintergrund unter dem Filterbereich zum Zeitpunkt des <filter>Aufrufs des Elements. Das durch diese Eigenschaft definierte Konzept wurde zum Zeitpunkt der Erstellung dieser Spezifikation als nicht kompatibel mit dem Modell des Stapelkontexts in CSS identifiziert. UAs können die in SVG 1.1 definierte Eigenschaft enable-background implementieren, sind jedoch nicht mit dieser Spezifikation oder mit CSS Compositing and Blending [W3C Working Draft] kompatibel.

Sanmai
quelle