2016-10-12 9 views
1

모든 32 x 32 이미지의 스프라이트가 있고 프로젝트에서 사용하지만 일부 장소에서는 32 x 32 대신 64 x 50이 필요합니다. 이제 CSS를 사용하여 어떻게 할 수 있습니까? 그것을 할 방법이 있습니까?스프라이트에서 이미지 크기를 조절하는 방법

도움을 주시면 감사하겠습니다. 감사.

+0

다른 크기를 처리하는 것과 다를 수 있습니까? 이미지의 어느 점을 원점으로 가져 와서 이미지를 배치하고 스프라이트 치수가 무엇이든간에 치수를 설정하면됩니다. 아니면 실제로 스프라이트의 크기를 조절하고 싶습니다. 왜곡합니까? – Roope

+1

우선, 당신은 그것을 잘못하고 있습니다. 다른 크기의 이미지가 필요하거나 단일 SVG 파일이 필요합니다. 같은 이미지를 스트레칭하는 것은 추악한 수정입니다, IMO. –

+0

약 32 x 32 svg 이미지가 있습니다. 그래서 나는 그것을 스프라이트에 추가했다. 한 곳에서 저는 위와 같은 다른 차원으로 3 개의 이미지를 만듭니다. 선명도는 좋아 보인다. 방금 ShellZero에서 제안한 scale() 속성을 사용했는데 정말 멋졌습니다. –

답변

0
당신은 실제로 스프라이트 안에 이미지를 확장 할 수 transform: scale() 속성을 사용할 수 있습니다

또는 새 zoom css 속성을 사용할 수 있습니다.

예 : 이미지가 32x32이고 크기를 64x64라고 말하면됩니다. 2로 간단한 곱하기로 트릭을해야합니다. 다음과 같이 그래서, 당신은 뭔가를 사용합니다 :

transform: scale(2.0);// multiplies both coordinates and you will get your scaled image of 64 x 64.

또는 당신이 원하는대로 당신은 단순히 귀하의 경우, 지금

zoom: 2;을 수행 할 수 있습니다에 X 축 다른 방법과 다른 방법으로 Y 축 의미에서 x는 너비이고 y는 높이입니다. 당신은 다음과 같이 할 수있는 :

transform: scaleX(2.0); 
transform: scaleY(1.5625); 
정말 이상한하지만 규모가 모든 브라우저에서 지원됩니다

그리고 한 가지 더, 줌 속성이 아직 파이어 폭스를 지원하지 않습니다 :) 트릭을 할해야

.

지원 : Scale


CSS Zoom
그것이 당신을 도움이되기를 바랍니다.

+1

고맙게도 @ShellZero는 훌륭하게 작동했습니다. 이것은 내가 찾고 있었던 것이다. 나는 zoom 속성을 좋아하지만 scale은 훨씬 더 유연합니다. 나는 그것을 좋아. 다시 한번 감사드립니다. –

+0

당신은 오신 것을 환영합니다. 내가 너를 도왔 기 때문에 기뻐. 내 답변에 만족하는 경우 내 게시물을 답변으로 표시하십시오. 감사. – ShellZero

+0

나는했다.감사 :) –

0

background-positionbackground-size 속성을 조합하여 사용할 수 있습니다. 이 예에서

은 (신장) 원본 이미지가 100X100과 100X75를 배경으로 설정 50 × 50,된다

#a1 { 
 
    background: url(https://dummyimage.com/50x50/000/fff); 
 
    width: 100px; 
 
    height: 100px; 
 
    background-position: 0 0; 
 
    background-repeat: no-repeat; 
 
    border: 1px solid red; 
 
    background-size: 100px 100px; 
 
} 
 
#a2 { 
 
    background: url(https://dummyimage.com/50x50/000/fff); 
 
    width: 100px; 
 
    height: 75px; 
 
    background-position: 0 0; 
 
    background-repeat: no-repeat; 
 
    border: 1px solid red; 
 
    background-size: 100px 75px; 
 
}
<div id="a1"></div> 
 
<br /> 
 
<div id="a2"></div>

관련 문제