这篇文章发布于 2025年10月13日,星期一,11:59,归类于 CSS相关。 阅读 220 次, 今日 219 次 一条评论
by zhangxinxu from https://www.zhangxinxu.com/wordpress/?p=11880
本文可全文转载,但需要保留原作者、出处以及文中链接,AI抓取保留原文地址,任何网站均可摘要聚合,商用请联系授权。
一、长话短说
CSS field-sizing
是一个CSS新特性,专门给输入型表单元素使用的,例如<input>
、<textarea>
元素等。
是这样的,在过去,无论是单行输入框,还是多行文本域,其宽度在内容输入的时候,都是固定的,如果希望尺寸跟着内容的宽度走,需要使用JavaScript代码帮忙处理,现在,无需这么麻烦,使用field-sizing
设置下就好了,例如:
input { field-sizing: content }
<input placeholder="输入内容">
此时,你在输入框内键入内容,可以看到,输入框的宽度基于你输入的内容多少自动撑大或缩小了。
实时效果如下所示(Chrome 123+,或者最新的Safari),大家可以再下面的输入框随便写点什么内容:
是不是可以看到,输入框的宽度紧跟着文字内容多少变化了?
二、语法速览
语法很简单,就下面这几个属性值:
field-sizing: content; field-sizing: fixed;
其中:
fixed
是默认值,表示尺寸固定。content
表示尺寸根据内容多少进行变化。
没什么好讲的。
三、补充说明
一些补充说明:
- 当输入框设置了
field-sizing:content
声明的时候,原本会影响尺寸的size
属性就会变得无效。 - textarea元素的
rows
和cols
属性也会无效。 field-sizing
属性也可以用在<select>
元素上。- 实际使用的时候,可以配合
min-width
和max-width
属性限制输入框的最小尺寸和最大尺寸。避免内容过多的时候,影响排版布局。
四、打道回府
好了,其实就这么点内容,我觉得这个特性还是有点用处的。
最后,兼容性:
Safari已经明确支持了。
好,就这么多!感谢阅读,欢迎点赞,转发。
😉😊😇
🥰😍😘
本文为原创文章,会经常更新知识点以及修正一些错误,因此转载请保留原出处,方便溯源,避免陈旧错误知识的误导,同时有更好的阅读体验。
本文地址:https://www.zhangxinxu.com/wordpress/?p=11880
(本篇完)
- HTML select下拉框支持hr元素啦 (0.467)
- 好诶,select下拉框元素支持样式完全自定义啦! (0.467)
- 伪元素表单控件默认样式重置与自定义大全 (0.292)
- 你知道吗,输入框的value值也能直接返回数值类型 (0.240)
- 完善:HTML5表单新特征简介与举例 (0.175)
- HTML5 placeholder实际应用经验分享及拓展 (0.175)
- 周知:CSS -webkit-伪元素选择器不再导致整行无效 (0.175)
- CSS :placeholder-shown伪类实现Material Design占位符交互效果 (0.175)
- HTML enterkeyhint设置iOS/Android键盘enter键 (0.175)
- 如何让文字作为CSS背景图片显示? (0.175)
- 详细了解CSS :focus-within伪类及其交互应用 (RANDOM - 0.117)
这玩意在input上意义不大,因为大多数时候input要么固定宽度,要么直接撑满宽度,最好用的还是textarea,不需要写额外js去自动扩展高度了