2010-02-25 2 views
3

Я создаю приложение в GWT и имею скин из моего графического дизайнера, который я подключил к приложению с помощью UIBinder, и он работает красиво. Теперь я хочу связать все изображения с помощью ClientBundle.Использование ресурсов изображения ClientBundle в URL-адресах css

Mayne из этих изображений используется в файле css, например.

.nav {background: url (nav_bg.jpg) left top repeat-x; высота: 27px; clear: both;}

Перед этим css я определил тег для включения пакета.

Как изменить запись css так, чтобы она использовала ImageResource из моего ClientBundle? Думаю, я могу делать встроенные стили для всех тегов html, но это ужасное разделение и много дополнительной работы.

Я успешно использовал ImageResources в html-части файла uibinder (например, в a), но я не вижу, как это сделать в css. Я даже включил css в блок, но я до сих пор не вижу правильного способа сделать это.

Любые предложения?

ответ

2

ClientBundles теперь можно использовать для размещения CssResources. Эти CssResources являются файлами CSS с некоторой дополнительной функциональностью.

Документы GWT описывают, что вам нужно в разделе о ImageSprites.

+0

Правда, но ценой жертвовать поддержкой IE6. Также я не вижу, как указать «левую верхнюю» часть правила css. Кажется, поддерживается только свойство repeat-x. –

0

Я закончил тем, что пропустил GWT css и общий набор изображений. Вместо этого у меня была сделана моя резная работа, используя блок изображений с фотографией css, созданный командой разработчиков/разработчиков. Это имеет эти преимущества.

1/Гораздо меньше css портирование, так как я могу подключить html прямо в связывание ui и использовать теги css из carve i.e, не используя uibinder css. Пока структура html соответствует вырезанию, это намного меньше, чем перенос всех css в gwt css.

2 Это также позволяет использовать svn/diff при внесении изменений - это было невозможно при использовании gwt css/image spriting.

3/Я могу легко поместить файлы image/css на CDN, так как теги загрузки находятся на главной странице и не страдают от ограничений Same Origin. FYI: Да, я знаю о компоновщике XS как о другом способе этого.

Он перестает быть полезным, когда carve использует css для позиционирования, и я хочу использовать LayoutPanels, но это не так уж плохо, если я прошу, чтобы макет css был отделен от стиля css.

Так что, в конце концов, я обнаружил, что при работе с дизайном/вырезанием с третьего лица гораздо проще избежать использования gwt css/images, но воспроизводить те же самые преимущества, используя традиционное css -писание и мини-классификацию. Я надеюсь, что это помогает кому-то.

Смежные вопросы