首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在io.js中添加CSS on SVG文件?

如何在io.js中添加CSS on SVG文件?
EN

Stack Overflow用户
提问于 2015-05-23 06:11:02
回答 1查看 363关注 0票数 1

我使用的是io.js、jsdom和D3。

我正在尝试将css添加到使用D3生成的SVG文件中,如本例http://bl.ocks.org/mbostock/7555321所示

CSS以这种方式添加了https://developer.mozilla.org/es/docs/Web/SVG/Element/style

但是不起作用,我做错了?,有什么想法吗?这是我的脚本https://gist.github.com/ripper2hl/4b0d25c90761ed7840f6

EN

回答 1

Stack Overflow用户

发布于 2015-05-24 10:43:58

下面的代码运行得很好,也可以打印样式,也许你需要的d3做了一些奇怪的事情?你的输出是什么?它有什么问题?

代码语言:javascript
复制
var jsdom = require("jsdom");

jsdom.env(
  "",
  [ 'http://d3js.org/d3.v3.min.js' ],
  function (err, window) {
    var d3 = window.d3;
    var document = window.document;
    var margin = {
        top : 40,
        right : 40,
        bottom : 40,
        left : 40
    };
    var width = 500 - margin.left - margin.right;
    var height = 250 - margin.top - margin.bottom;

    var svg = d3.select(document.body)
      .append("svg")
      .attr("version", 1.1)
      .attr("xmlns", "http://www.w3.org/2000/svg")
      .attr("width",width + margin.left + margin.right)
      .attr("height",height + margin.top + margin.bottom)
      .append("g")
      .attr("transform","translate(" + margin.left + "," + margin.top + ")");

    var style='\n /* <![CDATA[ */\n.bar {\n  fill: steelblue;\n}\n\n.bar:hover {\n  fill: brown;\n}\n\n.title {\n  font: bold 14px "Helvetica Neue", Helvetica, Arial, sans-serif;\n}\n\n.axis {\n  font: 10px sans-serif;\n}\n\n.axis path,\n.axis line {\n  fill: none;\n  stroke: #000;\n  shape-rendering: crispEdges;\n}\n\n.x.axis path {\n  display: none;\n}\n /* ]]> */\n';
    d3.select(document.head).append("style")
      .text(style);

    console.log(window.d3.select(window.document.body).html());
  }
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30406575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档