- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Vaadin 11 中有一个 View ,它显示在类似于 products/X
的 URL 中,其中 X
是产品标识符。
@Route(value = "products")
public class ProductView extends VerticalLayout implements HasUrlParameter<String> {
public ProductView() {
}
[...]
}
如果没有产品,我无法在此页面上显示任何信息,因此我在方法 setParameter
中添加所有组件:
@Override
public void setParameter(final BeforeEvent beforeEvent,
final String param) {
final Product product = findProduct(param);
if (product == null) {
return;
}
final Text name = new Text(product.getName());
final Text interestRate = new Text(String.format("Ставка: %.2f",
product.getInterestRatePercentPerAnnum()));
final Text duration = new Text(String.format("Срок: %d - %d месяцев",
product.getDurationMonths().getStart(),
product.getDurationMonths().getEndInclusive()));
final Text provider = new Text(String.format("Организация: %s",
product.getProvider().getName()));
final Text description = new Text("<html>Hi there! <b>Bold</b> text</html>");
add(name);
add(interestRate);
add(duration);
add(description);
add(provider);
}
但是各个数据项都显示在一行中:
这意味着由于某种原因VerticalLayout
水平布局组件。
如何修复它(确保我添加的每个组件都显示在单独的行上)?
最佳答案
Text
是一个特定的组件,因为它对应于 DOM 中(在浏览器中)的文本节点。因此,没有 HTML 元素,添加到 VerticalLayout
的内容将从左向右流动。这就是它在浏览器树中的样子:
使用 Div
代替:
final Div name = new Div(new Text("Product"));
final Div interestRate = new Div(new Text(String.format("Ставка: %.2f",
0.05d)));
final Div duration = new Div(new Text(String.format("Срок: %d - %d "
+ "месяцев", 10, 11)));
final Div provider = new Div(new Text(String.format("Организация: %s"
, 10)));
final Div description = new Div(new Text("<html>Hi there! <b>Bold</b>"
+ " text</html>"));
通过使用 Div
,您可以将 div
元素插入到 VerticalLayout
中,以便它可以完成工作。
关于java - 为什么 Vaadin 11 中 VerticalLayout 内的组件不垂直对齐?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53318838/
我附上了屏幕的两个 View ,一个是正常 View ,另一个是当我调整浏览器窗口大小时(或发生换行时)。我使用的是 Vaadin,我在 VerticalLayout 中有多个 CssLayout。
我正在使用登录表单(在 vaadin 中)。我使用 CSS 样式来获取背景颜色。问题是它没有显示 100% 的页面效果。 我在 chrome 上做了“检查”,发现“v-verticallayout v
编辑以包含以下建议:此代码块现在可以生成屏幕截图中的布局; 我有一个 UIBinder,我正在尝试进行布局,以便内容 Pane 有一个主要部分,该部分填充可用的宽度和高度,将页脚向下推到底部。我试过了
关注 tutorial ,我通过在应用程序模块中添加 build.gradle 来导入 Anko 库: implementation "org.jetbrains.anko:anko-sdk25:0.
我有一个组件,它作为我所有页面的通用布局存在。该组件的布局如下(使用 paint 制作,请见谅 :p): 向右箭头表示此布局是 HorizontalLayout,向下箭头表示 VerticalLa
我在 Vaadin 11 中有一个 View ,它显示在类似于 products/X 的 URL 中,其中 X 是产品标识符。 @Route(value = "products") public cl
我有一个自定义 JavaScript 组件(放置在 VerticalLayout 中),它的高度会随着用户输入而动态增长 - 类似于下面带有预览的 stackoverflow 编辑字段。 问题在于,当
我看过Anko 0.8 - unresolved lparams reference ,但我没有像该链接那样在最外层布局中使用 lparams。 我在以下代码中得到“ Unresolved 引用:lp
我是一名优秀的程序员,十分优秀!