所以我有一个svg模式,里面有9个点(3x3),透明背景。我将其作为对象引入了html,因为我还必须更改圆点的颜色,我认为我不能仅使用CSS就能做到。
现在,我需要重复此对象,以便获得全屏显示的点?我将如何完成?
最佳答案
因此,可以使用CSS更改点的颜色。例如:
<object id="object" type="image/svg+xml" data="/paht/to/mysvg.svg"></object>
var a = document.getElementById("object");
var svgDoc = a.contentDocument;
var styleElement = svgDoc.createElementNS("http://www.w3.org/2000/svg", "style");
styleElement.textContent = "* { fill: #000 }";
svgDoc.documentElement.appendChild(styleElement);
而且,您可以访问根目录(
dots
)中的每个子项(svgDoc.documentElement
)并根据需要对其进行操作,例如,通过svgDoc.documentElement.childNodes
乘以点等。