ここでCSSとvaadinの両方を使用しているアマチュアは、VaadinでレスポンシブなUIを実装しようとしていますが、UIオブジェクトの幅の設定に問題があります。すべてが反応的なCSSを破るようです。相続人は、私が説明してるものの例:設定された幅を維持しながら反応するCSS
CssLayout filterTypeLOptimiseBLayout = new CssLayout();
filterTypeLOptimiseBLayout.setResponsive(true);
filterTypeLOptimiseBLayout.addStyleName("flexwrap");
filterTypeLOptimiseBLayout.setSizeFull();
Label filtTypeLabel = new Label("Filter Type Filler");
filtTypeLabel.addStyleName("filtTypeLabel");
filtTypeLabel.setSizeFull();
filtTypeLabel.setResponsive(true);
filterTypeLOptimiseBLayout.addComponent(filtTypeLabel);
をそしてfiltTypeLabel
に適用される対応する応答CSSブロック:以前のコードで
/* ---- Filter Type Filler Label ------*/
//Basic inherited CSS
.filtTypeLabel {
padding: 5px;
}
//Mobile
.filtTypeLabel[width-range~="0-300px"] {
font-size: 12pt;
margin: 5px;
}
//Small Browser
.filtTypeLabel[width-range~="301px-600px"] {
font-size: 14pt;
margin: 10px;
}
//Big Browser
.filtTypeLabel[width-range~="601px-"] {
font-size: 16pt;
margin: 20px;
}
予想通り、私はボタンのフォントおよびマージンのスケールを達成しかし、私はラベルの幅のコントロールもしたいと思います。 filtTypeLabel.setSizeFull();
を使用すると、ラベルがすべてのスペースを水平に占有するため、ラベルと同じ行にあるものが次の行に折り返されます。 filtTypeLabel.setWidthUndefined();
を呼び出すと応答性のスケーリングが破られ、filtTypeLabel.setWidth("5%");
もそれを壊します。 CSSにmax-width
とmin-width
を設定すると、それも破損します。
レスポンシブCSS対応オブジェクトに設定幅を適用する方法はありますか?
完璧、ありがとうございました:) –