Я пишу программное обеспечение (GWT), в котором должны отображаться разные изображения soccerclubs и его имена. Поэтому я написал следующий метод:
public void updateClubNameHeader(String clubName, int logoNumber) {
clubLabelFrame.clear();
HTML clubLogo = new HTML();
clubLogo.setStyleName("clublogo_img");
clubLabelFrame.add(clubLogo);
Label clubNameLabel = new Label(clubName);
clubNameLabel.setStyleName("clubnameLabel"); <--- logoNumber?
clubLabelFrame.add(clubNameLabel);
}
Это не проблема, чтобы изменить имена клуба (clubNameLabel
), но если я хочу иметь новый логотип, этот стиль CSS используется: (имена файлов: 1.jpg, 2.jpg,...)
.clublogo_img {
...
background-image: url("images/1.jpg") !important
}
Проблема: если я хочу представлять каждый возможный клуб, мне приходится писать около ~ 100 стилей.
Вопрос: Можно ли передать мой целочисленный логотипNumber в CSS, так что этого одного стиля достаточно, чтобы показать все выбранные логотипы?
Вы не можете сделать это с помощью CSS. Вы можете сделать это с помощью GWT:
clubLogo.getElement().getStyle().setBackgroundImage("url(\"images/" + imageNumber + ".jpg\")");
clubLogo.getElement().getStyle().setBackgroundImage("url(\"images/" + imageNumber + ".jpg\")");