Вам нужно будет адаптировать стили Vaadin Grid, как показано в следующем фрагменте:
/* wrap text in grid column headers */
[part~="header-cell"] {
white-space: normal;
}
Включите аннотацию CSS через @CssImport
с темой сетки:
@CssImport(value = "./styles/grid-styles.css", themeFor = "vaadin-grid")
public class YourViewOrLayout extends Composite<Div> {
...
}
Основная путаница при создании веб-компонентов возникает с концепцией теневого DOM. Каждый веб-компонент имеет свою собственную стилевую область. Это означает, что все теги HTML в теневом DOM должны быть стилизованы с помощью тега <style>
в теневом DOM. Веб-компонент (здесь Vaadin Grid) поставляется со стилями, но вы можете добавлять свои собственные стили, используя аннотацию @CssImport
, как указано выше. Попробуйте проверить структуру HTML тега <vaadin-grid>
с помощью инструментов разработчика вашего браузера (кроме IE / Edge), и вы увидите теневой DOM. Однако некоторые теги, расположенные под веб-компонентом, не будут частью теневого DOM. На них ссылаются <slot>
s, и к ним будут применены глобальные стили. Для Vaadin Grid содержимое ячейки имеет интервалы.
Примечание. Предыдущие версии Vaadin Flow имели несколько иной способ включения пользовательских стилей веб-компонентов. См. документацию .