【问题标题】:Change text size to not exceed width of form input将文本大小更改为不超过表单输入的宽度
【发布时间】:2013-05-28 05:30:08
【问题描述】:

我有一个跨越页面宽度的表单<input>,字体大小为2em(我们称之为基本字体大小)。

如果输入的文本超过字段的宽度,我不希望它被截断/溢出,所以我的问题是:如何检测字段文本何时溢出字段并降低font-size 所以它都在视图中? 相反,我如何检测用户何时开始删除字符并反过来增加 font-size,但不高于基本字体大小?

非常感谢任何帮助。

【问题讨论】:

  • 你使用的是等宽字体吗?
  • 也许您可以预先确定填充宽度所需的字符数,然后如果字符数达到最大值,请更改字体大小。如果输入字段宽度是固定的,这可能会起作用。

标签: javascript css font-size


【解决方案1】:

这就是你需要的。

Demo

<input type="text" name="younameit" id="demo">
$('#demo').inputfit();

而且,这些 css 属性将有助于在字体大小发生变化时保持输入的大小。

Demo

min-height: 30px;
min-width: 500px;
line-height: 30px;

https://github.com/vxsx/jquery.inputfit.js

【讨论】:

  • 该插件所做的可能是唯一可能的解决方案:将字段的内容克隆到 div 中,并与字段的宽度进行比较,尝试考虑边距/填充/边框。 (我添加这个注释是因为这是一个非 jQuery 问题的 jQuery 答案,所以那些不想要 jQuery 的人可以知道应该做什么)。
猜你喜欢
  • 1970-01-01
  • 2019-01-06
  • 2018-10-22
  • 2013-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-20
  • 2019-02-05
相关资源
最近更新 更多