ΠΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΡΠΈΡΠΈΠ½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π° ΠΈ ΡΠ°Π²Π½Π° ΡΠΈΡΠΈΠ½Π΅ ΠΏΠΎΠ»Ρ Π²Π²ΠΎΠ΄Π°. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ (ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, Π΄Π»ΠΈΠ½Π½ΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²) Π±ΡΠ»ΠΎ Π±Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠΈΡΠΈΠ½Ρ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎ ΡΡΠΈΠ»ΡΠΌΠΈ, ΡΠ°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ.
Π£ Π½Π°Ρ Π΅ΡΡΡ ΡΠΎΡΠ½Π°Ρ ΠΎΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°;
Π’ΠΈΠΏΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ - "SVG" Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ "Stavanger Airport Sola".
ΠΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΈΠ½ΡΡΠ°ΡΠ΅ΡΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΠΎΠ΄ΠΎΠ² Π½Π°ΠΈΠ·ΡΡΡΡ ΠΈ Ρ
ΠΎΡΡΡ ΠΏΠΈΡΠ°ΡΡ Β«SVGΒ» Π²ΠΌΠ΅ΡΡΠΎ Β«Π‘ΡΠ°Π²Π°Π½Π³Π΅Ρ ...Β»
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ Π½Π°Ρ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Π½ΠΈΡ
ΡΡΠ΄ΠΎΠΌ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ Π² ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠ΅ΡΠΊΠ΅. ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΌΠ°Π»ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Ρ
ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΡΠΎ ΡΠΏΠΈΡΠΊΠΎΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π» ΠΊΠΎΠ΄Ρ, Π° Π½Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡ.
ΠΠ°Π°Π΄ΠΈΠ½ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅ΡΠ°Π΅Ρ Π½Π°ΡΡ Π±Π»ΠΈΠΆΠ°ΠΉΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
<strong i="10">@CssImport</strong>
( id = "vaadin-combo-box-overlay-override"
, value = "./styles/vaadin-combo-box-overlay.css"
, themeFor = "vaadin-combo-box-overlay"
)
./styles/vaadin-combo-box-overlay.css:
:host {
width: 500px !important;
}
ΠΠ»ΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠΏΠΈΡΠΊΠ°Ρ :
:host([theme~="large"]) {
width: 500px !important;
}
combobox.getElement().setAttribute("theme", "large");
ΠΡΠ±Π»ΠΈΠΊΠ°Ρ vaadin / vaadin-combo-box / issues / 529.
Π‘ΠΌ. ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ Π½Π° https://github.com/vaadin/vaadin-combo-box/issues/529#issuecomment -374611447
Π§ΡΠΎΠ±Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΡΠΈΠ½Ρ ΠΎΠ²Π΅ΡΠ»Π΅Ρ ComboBox:
:host([theme="my-combo-box"]) {
width: var(--my-combo-box-overlay-width, 200px) !important;
}
UI.getCurrent().getPage().executeJs("ShadyCSS.styleDocument({'--my-combo-box-overlay-width': $0 + 'px'})", newWidthAsInteger);
Π’Π΅ΠΏΠ΅ΡΡ Π² Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½ΠΎΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΡΡ Π·Π°Π΄Π°ΡΡ (Π·Π°ΠΊΡΡΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° https://github.com/vaadin/vaadin-combo-box/issues/529, ΡΠΌ. ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ PR https://github.com/vaadin/ vaadin-combo-box / pull / 876)
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ setOverlayWidth(String cssLength)
Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΠΏΠΎΡΡ CSS --vaadin-combo-box-overlay-width
.
Π― ΠΌΠΎΠ³Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ, ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ @Haprog
comboBox.getElement().getStyle().set("--vaadin-combo-box-overlay-width", "400px")
ΠΠ° Π½ΠΎΠ²ΠΎΠΌ ΡΠ°ΠΉΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠΉ Π²ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ:
https://vaadin.com/docs-beta/latest/ds/components/combo-box/#popup -width
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π’Π΅ΠΏΠ΅ΡΡ Π² Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½ΠΎΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΡΡ Π·Π°Π΄Π°ΡΡ (Π·Π°ΠΊΡΡΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° https://github.com/vaadin/vaadin-combo-box/issues/529, ΡΠΌ. ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΉ PR https://github.com/vaadin/ vaadin-combo-box / pull / 876)
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ
setOverlayWidth(String cssLength)
Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΠΏΠΎΡΡ CSS--vaadin-combo-box-overlay-width
.