반응형
빠른 이미지 변경
input { background-image: url('images/text.png') } input:focus { background-image: url('images/text-focus.png') }
엘리먼트의 상태가 바뀔때마다 다른 이미지를 로딩하고 싶을 경우가 있습니다. 위의 코드를 보면 포커스가 되었을 때 기존의 배경 이미지인 text.png파일을 text-focus.png파일로 바꾸어주는 것을 알 수 있습니다. 그런데 이렇게 파일을 따로따로 로딩하는 방식을 이용하는 것보다 한 이미지 파일에 두 이미지를 넣어놓고 background-position같은 속성을 이용하는 것이 더 빠릅니다.
.sprite { background-image: url(sprite.png); background-repeat:no-repeat; } .sprite.text { background-position:0px 0px; } .sprite.text:focus { background-position:0px -40px; }
위의 코드의 경우가 그러한 방법을 적용한 예라고 볼 수 있습니다. background-image에 변이될 이미지 2개를 넣어놓고 상태가 바뀔때마다 background-position속성을 바꾸는 것을 알 수 있습니다. 이 방법은 사실 옛날 2D게임에서 스프라이트를 이용하는 방식과 메우 비슷하다고 볼 수 있습니다.
반응형
'프로그래밍 > Style & Design' 카테고리의 다른 글
[WEB] HTML5를 이용한 responsible web (0) | 2012.12.11 |
---|---|
[CSS] CSS3 Patterns Gallery (0) | 2012.12.11 |
[Style] Font Custom – Custom icon webfonts from the command line (0) | 2012.12.06 |
responsive Template - smart start (0) | 2012.11.14 |
[Mobile] Multi Screen & Density, Nine patch (0) | 2012.11.12 |