2010-02-25 5 views
3

GWT에서 응용 프로그램을 만들고 UIBinder를 사용하여 응용 프로그램에 연결 한 내 그래픽 디자이너의 스킨이 있으며 아름답게 작동합니다. 이제는 ClientBundle을 사용하여 모든 이미지를 묶고 싶습니다.css url에서 ClientBundle 이미지 리소스 사용하기

이러한 이미지의 Mayne은 CSS 파일에서 사용됩니다.

.nav {background : url (nav_bg.jpg) left top repeat-x; 높이 : 27px; clear : both;}

이 CSS를 사용하기 전에 번들을 포함 할 태그를 정의했습니다.

내 ClientBundle에서 ImageResource를 사용하도록 CSS 항목을 어떻게 변경합니까? 나는 모든 html 태그에 대해 인라인 스타일을 사용할 수 있다고 생각하지만, 그것은 끔찍한 분리와 많은 추가 작업입니다.

uibinder 파일의 html 부분에 성공적으로 ImageResources를 사용했지만 (예 : a) CSS에서이 작업을 수행 할 수 없습니다. 나는 심지어 블록에 css를 인라인했다. 그러나 나는 아직도 이것을하기위한 올바른 방법을 보지 못한다.

제안 사항?

답변

2

이제 ClientBundle을 사용하여 CssResources도 호스팅 할 수 있습니다. 이러한 CssResources는 몇 가지 추가 기능이있는 CSS 파일입니다.

GWT의 문서는 ImageSprites에 대해 필요한 내용을 설명합니다.

+0

사실 그렇지만 IE6 지원을 희생시키는 대가를 치뤄야합니다. 또한 CSS 규칙의 "왼쪽 상단"부분을 지정하는 방법을 볼 수 없습니다. repeat-x 속성 만 지원됩니다. –

0

나는 GWT CSS와 이미지 묶기를 건너 뛴다. 대신 나는 디자인/조각 팀이 만든 css sprited 이미지 블록을 사용하여 내 조각을 완성했습니다. 여기에는 이러한 장점이 있습니다.

/iphone 바인더에 html을 직접 연결할 수 있고 ucode css를 사용하지 않아도 CSS 태그를 사용할 수 있으므로 CSS 포팅이 적습니다. html 구조가 새겨 져있는 한 모든 CSS를 gwt css로 마이그레이션하는 것보다 훨씬 적은 작업입니다.

2/변경 사항을 적용 할 때 svn/diff를 사용할 수도 있습니다. gwt css/image spriting을 사용할 때는 불가능합니다.

3 /로드 태그가 호스트 페이지에 있고 동일 원점 제한으로 인해 영향을받지 않기 때문에 이미지/CSS 파일을 CDN에 쉽게 넣을 수 있습니다. 참고 : 예, XS 링커에 대한 또 다른 방법으로 알고 있습니다.

carve가 CSS를 위치 지정에 사용하고 LayoutPanels를 사용하고자 할 때 유용하지 않습니다. 그러나 레이아웃 CSS가 CSS 스타일과 별개임을 요청하는 한 그렇게 나쁘지 않습니다.

결국 제 3 자의 디자인/개척자와 함께 할 때 gwt css/images를 사용하는 것을 피하고 전통적인 CSS 추출 및 축소를 사용하여 동일한 이점을 재현하는 것이 훨씬 쉽다는 것을 알았습니다. 나는 이것이 누군가를 돕기를 바랍니다.

관련 문제