나침반 스프라이트를 사용하여 가로로 스프라이트를 가운데에 배치하는 데 문제가 있습니다.SASS/Compass에서 스프라이트 센터링
나는 다양한 크기의 아이콘이있는 스프라이트를 가지고 있으며, 그들이있는 컨테이너에 가운데 놓 이도록하고 싶습니다. 그래서 그들은 예를 들어 왼쪽 아이콘입니다.
나는이 할 경우
$sprite-position: 50%;
@import "sprite/*.png";
를 다음 이미지가 생성 sprite.png에 집중되어 있지만, CSS는 실제로 같은 것입니다 : 오히려 예상보다
background-position: -9px -223px;
:
background-position: 50% -223px;
스프라이트에 위치를 지정하는 위치가 구체적으로 무엇인지는 무엇입니까? 그런 식으로 알았지? 지금은 50 %로 하드 코딩하고 Y 축은 싫어합니다. 왜냐하면 새로운 스프라이트를 추가 할 때 모든 것을 완전히 바꿔서 목적을 완전히 없애야하기 때문입니다.
컴퍼스, CSS에서이 작업을 잘못하고 있습니까? 그렇지 않으면 정상적으로 작동하지 않습니까? 이 작업을 완료 할 수있는 유일한 방법은 치수를 지정한 다음 아이콘을 포함시키고 그 안에 센터를 배치하는 것입니다. 50 %의 왼쪽 가치가 있지만 그렇게 할 필요는 없습니다 ... 맞습니까?
그냥 메모 ... 나침반은 JPEG 스프라이트도 지원하지 않습니다 .- 앞 페이지에 약 6 장의 홍보 이미지가 있습니다. 대체 할 수있는 부분이 위로 나올 정도로 좋을 것입니다. 폴더 및 그 정렬 된 이미지! 내가 바로 당신을 얻고 경우
감사합니다, 돔
Dom, 실제 문제가 무엇인지 명확히 할 수 있습니까? 여기서 말하는 내용을 보면 정상적으로 보이는 것처럼 들리지만 CSS를 코딩하는 방식에 만족하지 않습니다. 최종 결과에 실제 문제가 있습니까? 아니면 이미지 변경 후 다시 컴파일 할 필요가없는 것을 원하십니까? –
문제는 60 픽셀 너비의 div가 있고 60 픽셀 너비 (예 : 15, 20, 30, 40, 55 픽셀이 될 수 있음)의 이미지를 해당 div 내에서 가운데에 배치하고 싶습니다. 그래서 보통 스프라이트를 만들고 CSS에서는 background-position : 50 % -223px로 작성하면됩니다. 그러나 Compass는 정확한 왼쪽 위치를 기록합니다. 즉, 중앙에 있지 않음을 의미합니다. 여전히 왼쪽 정렬입니다. 그것은 정말 다른 것을하지 않는 스프라이트의 중간에 놓아야합니다. CSS도 변경해야합니다. 이 문제를 해결하려면 여분의 div 컨테이너가 필요하고 아이 스프라이트를 가운데에 배치해야합니다. –