1

cambodian高棉语中是កម្ពុជា. 由于第二个字符底部的两个元音组合在一起,这个高棉语单词比正常的 ASCII 字符高。

在 IE(版本 8 - 11)和 Mozilla Firefox(版本 28)中,元音不会完全显示在输入类型文本中。但在 Google Chrome(版本 34)中,会显示元音。

我在JsFiddle有一个测试页面。

我设置在浏览器中使用的高棉字体是高棉操作系统系统字体。

我能想到的唯一解决方案是增加输入类型文本的高度,例如input[type='text'] { height: 25px; }. 但在 IE 9 中,虽然高度更高,但除非在其旁边键入空格,否则元音仍然不会显示。

我可以使用 JavaScript 或 CSS hack 来让 IE 和 FIrefox 像 Google Chrome 一样显示元音吗?

4

1 回答 1

1

问题可能取决于字体、字体大小和渲染引擎。你可以做的是设置,它会覆盖浏览器中的常见默认值——它们使用的元素input { font-size: 100% }字体大小减少了大约 10% 。input在 Windows 7 中的 Firefox 上进行测试时,仅此规则就解决了该问题(否则会出现问题中描述的问题)。

在 IE 11 上,问题看起来更糟:高棉字符真的难以阅读(大约 1 毫米高),字体大小设置也没有多大帮助。原因似乎是 IE 使用了不同的字体。添加input { font-family: Khmer UI }解决了这个问题。但这当然取决于系统中是否存在合适的字体。您的里程会有所不同,但将字体大小设置为 100% 并将字体系列设置为合适的字体(如果可以正常工作,则与普通文本相同)input可能会在本地解决问题。

在网页上,情况要复杂得多。高棉字符仍然很少出现在字体中——很可能是用户的系统没有支持它们的字体。(根据Fileformat.info 的数据,只有两种字体具有高棉字符:Code2000 和 GNU unifont。还有更多,但它们很可能是用户需要下载和安装的字体,而不是操作系统附带的任何字体。 ) 所以似乎唯一实用的方法是使用可下载的字体,例如Google 字体 Khmer。根据 Google 的说明进行部署,并将其设置为普通文本中的高棉内容和input(并将大小设置为 100%)。

于 2014-04-25T20:21:40.477 回答