2013-02-20 22 views
6

Ich muss etwas offensichtlich fehlen, aber ich kann nicht die <text> angezeigt werden. Siehe http://jsfiddle.net/ydaLh/ für HTML + CSSWarum wird ein Svg: Text nicht angezeigt?

<svg style="width: 320px; height: 200px; top: 0px; left: 0px; position: relative;"> 
    <g class="depth"> 
     <g class="children"> 
      <rect class="child" x="99" y="0" width="47" height="30"> 
       <text dy=".75em" x="105" y="6">PRIMARY</text> 
      </rect> 
      <rect class="child" x="90" y="0" width="8" height="30"> 
       <text dy=".75em" x="96" y="6">MASTER</text> 
      </rect> 
      <rect class="parent" x="90" y="0" width="56" height="30"></rect> 
     </g> 
    </g> 
</svg> 

Basierend auf http://bost.ocks.org/mike/treemap/

+5

In SVG verschachteln Sie nicht Textelemente innerhalb der grafischen Elemente , Sie müssen etwas wie 'svg.append (" rect ") haben. append (" text ")' aber Sie brauchen 'svg.append (" rect "); svg.append ("text") ' – Duopixel

+0

@Duopixel können Sie es als Antwort hinzufügen? –

Antwort

10

In SVG Sie dies nicht tun Nest Textelemente innerhalb grafischen Elementen, müssen Sie etwas ähnliches haben:

svg 
    .append("rect") 
    .append("text"); 

Aber du eigentlich Benötigen Sie:

svg.append("rect"); 
svg.append("text"); 
Verwandte Themen