Javascript 使用D3设置div宽度
我在我的Javascript 使用D3设置div宽度,javascript,html,d3.js,Javascript,Html,D3.js,我在我的html中创建了一个div <div id="search"></div> 我可以在DOM中看到,我的div的宽度和高度已更改: 但是,在呈现的html中,div只是10px x 10px 为什么会发生这种情况?我没有任何覆盖div大小的CSS。如何将我的div设置为所需的宽度?尝试: d3.选择(“搜索”) .样式(“高度”,高度) .样式(“宽度”,宽度) 这是一篇老文章,但对于任何想解决这个问题的人来说,以下内容都可以: var width = 0.1
html
中创建了一个div
<div id="search"></div>
我可以在DOM中看到,我的div的宽度和高度已更改:
但是,在呈现的html中,div
只是10px x 10px
为什么会发生这种情况?我没有任何覆盖div
大小的CSS
。如何将我的div
设置为所需的宽度?尝试:d3.选择(“搜索”)
.样式(“高度”,高度)
.样式(“宽度”,宽度)代码>
这是一篇老文章,但对于任何想解决这个问题的人来说,以下内容都可以:
var width = 0.15 * window.innerWidth,
height = 0.95 * window.innerHeight;
var searchcolumn = d3.select("#search")
.style("width", width + 'px')
.style("height", height + 'px');
我添加了is+'px'
;并且还将.attr
更改为.style
,因为您在这里使用的是CSS
工作代码:
var数据=[10,12,6,8,15];
var svg=d3.select('body')
//.append('svg')
.attr('width',500)。attr('height',500);
变量宽度=0.15*window.innerWidth,
高度=0.95*window.innerHeight;
svg.selectAll('div'))
.数据(数据)
.enter().append('div')
.attr('class','divs'))
.attr('x',函数(d,i){d.clicked=false;返回100+100*i;})
.attr('y',函数(d,i){返回0;})
.style('width',width+'px')
.style('height',height+'px')
.attr('background-color',function(){return'red';})
.text(函数(d){return d;})
.divs{
背景:蓝色;
显示:内联块;
浮动:左;
保证金:5px;
}
如果要设置多个样式属性,而不是重复样式(“,”)
n次,只需执行以下操作即可:
d3.select("#search").style({
'height': height+'px',
'width': width+'px'
});
希望对您有所帮助。指定单位,即宽度+“px”
。可能涉及的对象:由于库的默认行为发生了更改,此注释不再正确。看到和
d3.select("#search").style({
'height': height+'px',
'width': width+'px'
});