有意思:textarea resize属性下纯CSS交互效果

系统 2026 0

 

一、众所周知的

 

众所周知,文本域( textarea )在FireFox或Chrome浏览器下,右下角有个可以拖拽的标志。
textarea拖拽的小标示 张鑫旭-鑫空间-鑫生活

 

有人保留,有人嫌碍事,直接 resize:none; 掉,但是,估计没人利用整个儿做交互效果。

 

 

二、纯CSS的交互展示

 

您可以狠狠地点击这里: textarea resize下的纯CSS交互demo

 

例如,在FireFox浏览器下,拖动(往右→)下图圈中的图标:
点击操作示意

 

一个半透明遮罩层随着拖动把张含韵给覆盖了,达到了半遮面的交互效果。
拖动中示意 张鑫旭-鑫空间-鑫生活

 

效果没什么,但是却完全CSS实现的,就有意思了。

 

 

三、实现原理

 

我们平时拖动文本域的时候,往右拖则文本域宽度往右侧扩展。但是,如果文本域右侧定位(浮动或绝对定位),则右侧不动,宽度往左侧扩展。下图演示为右100像素绝对定位:
默认位置 拉伸后

 

我们还知道, textarea resize 的时候宽度变化会让具有“包裹性”的父元素宽度跟着一起变化,所以,如果我们把 textarea 放在具有半透明背景色的层中,那拉伸的时候,这个半透明层不就可以拉拉伸伸,有了交互效果啦!这就是demo中半透明层覆盖来覆盖去的原理。

 

说得再多也不容易明白,demo中一些障眼的属性( overflow:hidden; opacity:0; )去掉,你就知道大概了。下图为去掉 overflow:hidden; 以及文本域 opacity 设为 0.6 后的效果:
一些障眼的CSS属性去掉后的效果 张鑫旭-鑫空间-鑫生活

 

 

四、结束语

 

经测试,Opera/FireFox/Chrome浏览器支持,IE10以及下面的喽喽们都不支持。显然,兼容性是硬伤。因此,除了一些特殊情况,此实现没有多少实用价值。仅供大家娱乐,仅供大家参考。当然,您可以发挥你智慧实现其他一些交互。

 

唉,忧伤的三月,就这些,感谢阅读!

 

 

参考文章: Tricky Textarea Pulltab

 

原创文章,转载请注明来自 张鑫旭-鑫空间-鑫生活 [ http://www.zhangxinxu.com ]
本文地址: http://www.zhangxinxu.com/wordpress/?p=3132

有意思:textarea resize属性下纯CSS交互效果


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论