Скажем, у меня есть ярлык:Как изменить размер шрифта метки в ваадине в удобном для макета режиме?
Label myLabel = new Label(_("I am smaller than normal text"));
myLabel.setSizeUndefined();
(где _
любимая функция локализации).
Я бы хотел, чтобы он был меньше обычного. Поскольку нет одноранговой метод Ярлык для выполнения этого я должен прибегнуть к добавлению «сырые» правила CSS, например так:
CSSInject cssSmall = new CSSInject(".small { font-size: small; }");
myPage.addComponent(cssSmall);
myLabel.addStyleName("small");
myPage.addComponent(myLabel);
Это единственный вид работ. Да, текст : меньше, но когда страница сначала построена, Vaadin определяет размер этикетки так, как если бы шрифт был обычного размера. Когда что-то заставляет страницу перерисовываться/переписываться, Ваадин понимает, что происходит, и дает правильный размер этикетке.
Это заставляет страницу «прыгать» заметно, так как этикетка становится как короче, так и не столь высокой.
Как я могу обойти это?
Почему бы не использовать тему? вы можете быть уверены, что стиль там, и в браузере не должно быть мерзких хикбоксов. – cfrick
@cfrick Если использование темы означает, что этого не произойдет, я приму это в качестве ответа, даже если конкретный подход недоступен мне – badp
, то, возможно, поместите это как отредактировать в свой вопрос (который вы не можете использовать темы (почему не btw?)), поэтому может быть выпущен какой-то действительный ответ на вашу проблему – cfrick