2016-09-28 4 views
-1

나는 다음과 같은 CSS를 가지고 :배경 위치가 표시되지 않습니다

.flag 
{ 

    background-image: url('http://192.168.1.88/david/images/flag_set/flag_set/europa_flag_set.jpg'); 
    width: calc(4 * 5.93px); 
    height: calc(4 * 3.99px); 
    background-size: calc(4 * 35.08px) calc(4 * 49.63px); 
    cursor:pointer; 

} 
.flag.portugal 
{ 
    float: left; 
    background-position: calc(4 * -14.62px) calc(4 * -30.42px); 
} 
.flag.reinoUnido 
{ 
    float: right; 
    background-position: calc(4 * -21.40px) calc(4 * -40.22px); 
} 

그리고 해당 HTML을 :

가 잘 작동하지만 내 안드로이드 태블릿에서 내 노트북에서
<div class="flag contentor"> 
    <div class="flag portugal" onclick="$('.lang').removeClass('mostra');$('.lang.portugal').addClass('mostra');"></div> 
<div class="flag reinoUnido" onclick="$('.lang').removeClass('mostra');$('.lang.reinoUnido').addClass('mostra');"></div> 
</div> 

그 두 개의 흰색 사각형 만 보여줍니다.

배경을 잘못 배치하고 있습니까? 태블릿 브라우저와 호환되지 않습니까?

europe flags

그리고 내가이 된 div에 표시 할 필요는 포르투갈 플래그와 같은 영국 플래그은 다음과 같습니다 :

내가 사용하고있는 이미지입니다

portugal and uk flags

이 문제를 해결하는 데 사용할 수있는 폴리 필/심이 있습니까?

+0

질문에 오타가 있거나 실제로 배경 이미지 선언을 닫지 않습니까? 'background-image : url ('http://192.168.1.88/david/images/flag_set') '배경 이미지 : url ('http : // 192.168.1.88/david/images/flag_set'? ; – thepio

+1

'background-image' (불완전한 것)를 잘못 복사했다고 가정하고 정확한 계산이 필요한 경우'calc()'함수가 필요한 이유는 무엇입니까? –

+0

calc가 문제가 될 수 있습니다. http : // caniuse를 참조하십시오. com/# search = calc – CBroe

답변

1

calc()은 다른 측정 값을 계산하기위한 것입니다 (예 : 100% - 24px, 15em * 14% 등). 정확한 측정 값이 있으므로 계산할 필요가 없습니다. 어쩌면 그게 문제 야. 나는 당신의 배경 이미지 문장이 당신의 코드에서 괜찮다고 생각한다. 그러나 픽셀 크기에서 2 자리 소수를 설정하는 이유가 무엇인지 알지 못합니다. 저에게는 의미가없는 것 같습니다.

.flag 
{ 
    background-image: url('http://192.168.1.88/david/images/flag_set'); 
    width: 23.72px; 
    height: 15.96px; 
    background-size: 140.32px 198.52px; 
    cursor:pointer; 

} 
.flag.portugal 
{ 
    float: left; 
    background-position: -58.48px -121.68px; 
} 
.flag.reinoUnido 
{ 
    float: right; 
    background-position: -85.6px -160.88px; 
} 
+0

내 이미지는 3508 x 4963입니다. 나는 140.32 x 198.52가 나온 곳에서 25로 스케일링을 시작합니다. 직접 25 요소를 사용합니다. 저는 100을 기준으로 차원을 나눈 다음 25 요소를 적용하기 위해 4를 적용했습니다. 25 대신에 50으로 모든 4를 2로 대체 할 것입니다! 그것은 그 아이디어였다! 내 계산이 컨테이너 크기가 아닌 이미지 크기와 관련되어 있기 때문에이 경우 %와 같은 상대 측정을 사용하는 방법을 모른다. – davidmr

+1

이 대답에 대한 판을 구성 할 수 있지만, 제대로 작동하기 때문에 시간이 필요하다. 지금 (당신 같은 스페인어 : P), 시작한 후에 나는 (아무도 대답하지 않으면) 당신에게 대답 할 것입니다. –

+0

감사! 나는 그 문제가 계산에 없다는 것을 알았다! 나는 다른 CSS 라인에서 실수로 그것을 숨기고 있었다. 그러나 안드로이드에서 자동으로 또 다른 스케일을 추가하여 여러 플래그와 잘못된 플래그를 표시합니다. – davidmr

관련 문제