2012-11-26 4 views
2

text:transform의 CSS 속성에 문제가 있습니다. 대문자로 설정하면 IE7 및 IE8에서 다르게 작동합니다. 페이지 [1]의 제품 제목은 다른 브라우저에서는 apple tree 'Gala'이고 IE에서는 apple tree 'gala'입니다. 따옴표 뒤에 'g'문자를 적어 둡니다. 나는 'g'가 IE와 다른 브라우저에서 모두 자본이되고 싶다.text-transform : IE의 문제를

Internet Explorer에서 작동하도록하기 위해 필요한 해킹 또는 추가 설정이 있습니까?

[1] - http://shop.shootcare.co.uk/pomonafruits/find/apple-tree-gala-apl026?path=&ref=mall

답변

4

속성 text-transform은 CSS 사양에서 심각하게 정의가 부족합니다. 그것의 CSS 2.1 definition은 "단어"의 의미를 지정하지 않습니다. 컴퓨터 컨텍스트에서 "단어"는 공백이 아닌 문자의 최대 시퀀스를 의미하므로, 포함 된 아포스트로피 문자열 '갈라'는 한 단어가되고 첫 번째 문자는 아포스트로피입니다. 따라서 IE가 가장 적절하다고 주장 될 수 있지만 다른 브라우저는 다른 해석을 채택했습니다.

CSS3 Text 초안 변경하거나 (정말! "문자 또는 숫자"를 의미) 첫 편지이 영향을받을 수 있도록 의미를 명확하게 제시한다. 그래서 이것은 'gaia'의 g를 대문자로 만들 것입니다. 그러나 여전히 "단어"는 정의하지 않습니다. "최첨단"이 두 단어인지 아니면 한 단어인지, 또는 "rock'n'roll"에 얼마나 많은 단어가 있는지.

결론은 단어를 대문자로 표시하는 거의 모든 방법이 CSS 방식보다 더 신뢰할 수 있다는 결론입니다. 가능하면 페이지를 생성하는 소프트웨어를 수정하여 원하는 규칙에 따라 서버 측에서 원하는 작업을 수행하십시오. JavaScript를 사용하는 것조차 CSS보다 안전합니다.

0

잘은 자바 스크립트를 반환 일부 브라우저의 자바 스크립트에 대한 예를 들어, 일부 브라우저에 다른 작품을 변형 활용, 다른 일부는 자바 스크립트를 반환합니다.

단어의 나머지 글자로 대문자 사용은 계속 유지됩니다. 첫 번째 단어 만 변경되므로 intERNET이라는 단어가 있으면 IntERNET을 반환하여 그대로 그대로 둡니다.

그래서 내 야생 추측은 ie7입니다. 첫 번째 문자를 만드는 단어 byt로 '축하'를 사용하고 있습니다. 즉 '돌아 오는 것과 똑같이'하려고합니다. 그것을 해킹 할 수는 있지만, 테스트를 시작하기 위해 갈라 대신에 갈라를 사용하고, 대문자로 쓰는 동안 무시할 수있는 방법이 있는지 살펴보아야합니다.