首页 > 解决方案 > Vaadin Flow Grid 没有高度

问题描述

我有以下Grid显示 Java 系统属性:

systemPropertyGrid = new Grid<>();
systemPropertyGrid.setItems(buildSystemProperties());
systemPropertyGrid.addColumn(SystemProperty::getProperty).setHeader("Property").setFlexGrow(1);
systemPropertyGrid.addColumn(SystemProperty::getValue).setHeader("Value").setFlexGrow(5);
systemPropertyGrid.setHeight("500px");

当我替换setHeightby时,所有项目都会显示setHeightByRows(true)。但是,只要我没有指定systemPropertyGrid.setHeightByRows(true)网格在浏览器(Firefox,Edge)中的计算高度为 2 像素,即边框。但是,元素样式height设置正确,500px正如我在 Firefox 开发人员工具中看到的那样。

Vaadin Flow 中的错误?height浏览器最终怎么可能不使用元素样式呢?

截屏: 填充项目和高度设置为 500 像素但实际上高 2 像素的网格

SSCCE 使用 Vaadin Flow 弹簧启动器: my-starter-project_51443246.zip。调用 maven 目标 springBoot:run。

标签: vaadinvaadin10vaadin-flow

解决方案


你说的对。它在 Firefox 中不起作用,而在 Chrome 中起作用。您可以在GitHub中提交问题。作为一种解决方法,如果您设置 parent 的高度VerticalLayout,它在 Chrome 和 Firefox 中都可以使用。因此,添加以下语句:

setHeight("500px");

推荐阅读