2014-04-25 3 views
1

크메르어의 cambodianកម្ពុជា입니다. 크메르어의이 단어는 두 번째 문자의 하단에있는 두 모음의 조합으로 인해 일반 ASCII 문자보다 크다.HTML 입력 유형 텍스트에 Khmer 문자 (모음 포함) 표시

IE (버전 8-11) 및 Mozilla Firefox (버전 28)에서는 모음이 입력 유형 텍스트에 완전히 표시되지 않습니다. 하지만 Chrome (버전 34)에서는 모음이 표시됩니다.

나는 JsFiddle에 테스트 페이지가 있습니다.

내 브라우저에서 사용하도록 설정 한 크메르어 글꼴은 크메르어 OS 시스템 글꼴입니다.

제가 생각할 수있는 유일한 해결책은 입력 유형 텍스트의 높이를 높이는 것입니다. input[type='text'] { height: 25px; }. 그러나 Internet Explorer 9에서는 높이가 더 높지만 모음 옆에 공간을 입력하지 않으면 모음이 표시되지 않습니다.

IE 및 FIrefox에 Google 크롬과 같은 모음을 표시하는 데 사용할 수있는 JavaScript 또는 CSS 해킹이 있습니까?

답변

1

문제는 글꼴, 글꼴 크기 및 렌더링 엔진에 따라 다를 수 있습니다. 이것에 대해 할 수있는 일은 input { font-size: 100% }으로 브라우저의 일반적인 기본값보다 우선합니다. 즉, 글꼴 크기를 input 요소에 대해 약 10 % 줄였습니다. 이 규칙만으로도 Windows 7에서 Firefox를 테스트 할 때 문제가 해결되었습니다 (그렇지 않은 경우 질문에 설명 된 문제가 나타남).

IE 11에서 크메르어 문자는 실제로 읽을 수 없으며 (높이 약 1mm) 글꼴 크기 설정이별로 도움이되지 않습니다. 이유는 IE가 다른 글꼴을 사용하는 것 같습니다. input { font-family: Khmer UI }을 추가하면이 문제가 해결됩니다. 그러나 이것은 물론 시스템에 적합한 폰트의 존재 여부에 달려 있습니다. 귀하의 마일리지는 달라질 수 있지만 input 요소에 대해 글꼴 크기를 100 %로 설정하고 글꼴 패밀리를 적절한 글꼴로 설정하면 (정상적으로 작동하는 경우 일반 텍스트와 동일 함) 요소가 로컬에서 문제를 해결할 수 있습니다.

웹 페이지에서 상황은 훨씬 더 복잡합니다. 크메르 문자는 여전히 글꼴에서 거의 발견되지 않습니다. 사용자 시스템에 글꼴을 지원하지 않는 경우가 있습니다. (Fileformat.info data에 따르면이 글꼴에는 크메르어 문자가 Code2000과 GNU unifont라는 두 가지 글꼴이 있지만 더 많은 기능이 있지만 OS와 함께 제공되는 글꼴보다는 사용자가 다운로드하여 설치해야하는 글꼴 일 가능성이 높습니다.) 유일한 실용적인 접근 방식은 Google font Khmer과 같은 다운로드 가능한 글꼴을 사용하는 것입니다. Google 지침에 따라 배포하고 크메르어 콘텐츠를 일반 텍스트로 설정하고 input (크기를 100 %로 설정)으로 설정합니다.

+0

감사합니다. 현재 글꼴 크기를 100 %로 설정하고 크메르어 UI 글꼴을 사용하여 테스트하고 있습니다. 지금까지 초기 테스트에서는 IE8 - IE11에 대해 긍정적 인 결과를 보여줍니다. 더 많은 것을 더 테스트 할 것입니다. :디 –