为svg元素中的文本标签添加样式
问题描述:
我有一个动态创建的图形,因此svg包含具有以下代码的部分。 bt我无法给这个类的背景颜色.. ive与attr()函数动态地尝试它,但它不工作的方式.. 是否有指定的CSS像SVG:文本?为svg元素中的文本标签添加样式
<text id="circleText_Persons-bruno-waterfield" font-size="14" class="circleText" font-family="Tahoma" text-anchor="middle" background-color="#000000" font-weight="900" display="block" x="-1.8714285714285717" y="28.711414285714287" fill-opacity="1" stroke-opacity="1" style="fill: #666666;">Bruno Waterfield</text>
动态创建SVG文本
nodeEnter.append("svg:text")
.attr("id", function(d){ return "circleText_" + d.name})
.attr("font-size", function(d){return 14;}) //returnNodeSize(d)/2
.attr("class", function(d){return "circleText"}).attr("font-family", "Tahoma")
.attr("text-anchor","middle")
.attr("background-color","#000000")
.attr("font-weight","900")
//returnNodeSize(d)+returnNodeSize(d)/1.8;
.text(function(d){
return toTitleCase(d.name));
答
的把一个rect
的text
元素符合文本的边框背后你所选择的颜色。 SVG文本没有用于设置背景颜色的流程框;你必须做一个。
我编辑了这个问题...所以如果我添加一个矩形它将像svg:rect:text – 2013-02-24 14:22:58
@SamDaSilva一样工作不,你需要生成'svg:rect'并将它放在文本元素之前,然后将其x,y,宽度和高度设置为与以下文本元素相同(一旦知道这些值)。 – Plynx 2013-02-24 14:25:50