我是用户体验设计师,我们正在开发一种产品,该产品需要一个文本输入字段供用户插入其注释。无论是用繁体中文还是英文输入,都必须有一个字数限制指示。
所以我的问题是:
如果字符数限制为15,我是否可以正确地说:
I am in Sweden
(11/15个字符)
我在瑞典
(4/15个字符)
有人告诉我1个汉字算作2个字节的代码,而1个英文字母算作1个字节。这如何影响字符数限制?我想确保设计对于开发人员来说尽可能清晰。
答案 0 :(得分:0)
是关于显示器尺寸的,对不对?在这种情况下,对单词进行计数将不会有用,因为单词的长度可以根据您的需要而定。
对字符进行计数虽然稍微有用一点,但由于不同的字符具有不同的宽度,因此也不能保证邮件的结尾位置正确。举个例子,这四个字符串每个都包含五个字符:
确实没有解决此问题的优雅方法。您需要知道所使用字体的精确度量,然后计算每个输入的视觉宽度。
如果您满意“足够接近”的解决方案,则可以只使用<input>
元素的maxlength
属性。 HTML和JavaScript计数UTF-16代码单元,这意味着所谓的“基本多语言平面”中的字符计数为1,其他所有字符计数为2。
“基本的多语言平面”包含当今常用的所有字符中的99%,因此绝大多数用户可能不会注意到任何错误。您可以使用JavaScript做一些更奇特的事情,但我认为对于这种任务并不是必须的。
请记住,这种方法仍不能保证用户输入的内容在视觉上适合 ,除非您留出很多空白以防万一。一定要和一些窄而宽的字符一起玩,看看它们在打印时实际占用了多少空间。