Javascript Can';t改变元素';s高度

Javascript Can';t改变元素';s高度,javascript,css,angular,Javascript,Css,Angular,我试图通过拖动(如)来调整元素的大小。我编写了一个简单的指令(稍后将处理ghostbar): 问题是我不能改变元素的高度。其他风格也不错。我用的是Angular 4.0.3 计算属性: display: block; height: 244.781px; left: 0px; overflow-x: hidden; overflow-y: scroll; position: absolute; top: 655.422px; width: 1793px; *renderer.setStyle(

我试图通过拖动(如)来调整元素的大小。我编写了一个简单的指令(稍后将处理ghostbar):

问题是我不能改变元素的高度。其他风格也不错。我用的是Angular 4.0.3

计算属性:

display: block;
height: 244.781px;
left: 0px;
overflow-x: hidden;
overflow-y: scroll;
position: absolute;
top: 655.422px;
width: 1793px;
*
renderer.setStyle()
也不起作用

**我试图调整大小的元素是网格平铺(来自角度材质)

***指令对其他元素起作用。

编辑2:

我深入研究了
md网格列表
实现。每次触发
ngAfterContentChecked
时,都会重新计算行高()。这发生在每次鼠标事件之后,可能是设置高度无效的原因

md网格列表
文档中,我可以看到您还可以将
行高
(例如200px)输入参数传递到`md网格列表。这似乎是设置行高的最干净的方法,但会将所有行缩放到相同的大小

如果这不是您想要达到的效果,您可以尝试在lifecycle挂钩中设置高度


编辑:

如果代码试图调整
display:inline
元素的大小,则首先必须对其应用例如
display:inline块。否则,它将忽略高度值


style.height
属性要求数值有一个单位(例如
%
px
rem
em
vh

这应该起作用:

el.nativeElement.style.height=`${e.pageX+2}px`;

哦,是的,对不起,我试过了,没用。示例代码“更新”中出错。我已使用另一种可能的解决方案更新了答案。元素有display:block。为问题添加了计算属性。在检查实现后,我已使用另一种可能的解决方案更新了我的答案。
display: block;
height: 244.781px;
left: 0px;
overflow-x: hidden;
overflow-y: scroll;
position: absolute;
top: 655.422px;
width: 1793px;