H5时代的多行文本框

说起输入框,大家都耳熟能详了,今天跟大家谈一谈H5时代的多行输入框!首先一起回顾下输入框在PC端的应用:

说起输入框,大家都耳熟能详了,今天跟大家谈一谈H5时代的多行输入框!

首先一起回顾下输入框在PC端的应用:

PC端多行输入框的实现及问题

多行输入框,毫无疑问,大家都会想到表单元素textarea标签,在WEB应该用上常见的是评论输入框,微博信息输入框等,它们有着如下的共同点:

  • 有默认高度(默认三行文字的高度);
  • 有最大高度;
  • 超过最大高度即出现垂直滚动条;
  • 在页面最顶端,有实际占位

实现方法一:

比如:企鹅微博

H5时代的多行文本框

方法一问题:由于超过默认高度后,高度需要实现随内容自动撑开的视觉效果。目前大部分的实现方法是:通过js检测是否产生滚动条来确定显示文本域的高度是否动态增加!对于不会js的小白有没有更适合的方案呢!当然有的!

方法二:div模拟textarea文本域及高度自适应

此种方法主要使用的是contenteditable标签属性,即允许用户编辑元素内容包含的任意文本,包括子元素!使用方法非常简单,只需要在block元素上加上contenteditable=”true”就可以了,如下demo:

H5时代的多行文本框

方法二问题:如果您是从其他页面上拷贝一段内容过来,然后粘贴到可编辑模式下的div中,会连HTML也完整的复制过来的,这种情况下就需要对输入的内容进行HTML字符过滤。

这两种解决方案同样也适用于H5页面!

H5端多行输入框的实现

H5及移动设备上输入框有着如下的共同点:

  • 有默认高度(一般容纳一行内容的高度);
  • 有最大高度;
  • 超过最大高度即出现垂直滚动条;
  • 在页面最底端,输入内容会呼出键盘;

如下图类似微信客户端的输入:

H5时代的多行文本框

上面提到的PC端的两种方法也可以实现此效果,同样的有以下问题:

一、textarea:需要通过js检测来动态增加高度,这在移动端,并不是很理想的实现方式;

二、用div模拟:键盘被唤醒的时候会将固定在底部的输入框遮挡住一部分,无论是用absolute还是fixed,都会存在这样的问题! (不过不用担心,新的系统已经解决了这个问题!)

所以,在做H5的时候,第二种方法很值得一试!

 

来源:http://ued.ctrip.com/blog/?p=4033

原创文章,作者:Catherine,如若转载,请注明出处:https://www.iamue.com/32269/

(0)
CatherineCatherine
上一篇 2017-06-04 16:29
下一篇 2017-06-04 19:34

相关推荐

  • iOS10 交互设计启示

    导读:本文用交互设计的思维对iOS10的新特性进行分析。撇开平时我们考虑的界面排布,页面元素等问题不谈,将视角转移到屏幕外的东西:如时间维度的,空间维度的,手势操作等等,以提升我们的用户体验。本文作者是蘑…

    2017-08-04
  • 【招聘】萧山众多高薪岗位专场来了,就在等你!

    萧山之窗移动生活由此开始....关注还在愁到哪里去上班吗?还在担心工资不够花吗?这里或许有适合你的岗位!2018萧山信息港小镇春季综合型人才招聘大会企业名称招聘岗位微医集团(浙江)有限公司资深Java开发工程师,搜索研发工程师,前端架构师,Java架构师,自然语言算法工程师,医学影像算法工程师,家庭医生,健康管理师,HRBP,客服专员浙江讯飞智能科技有限公司系统测试工程师,资深视觉设计师,视觉设计师,大数据工程师,高级交互设计师,研发架...

    2018-03-21
  • 设计师的知识管理

    作者: shareboy 人们每谈到设计很自然的就会联想到创意、想法。作为设计师,好像我们的大脑里就理所应当地充满了各种创意,然而这些创意是本来就存在于大脑里的吗?显然不是。 有人说创意来自冥想,我不否认有些天…

    2015-04-22
  • 线上广告更加吸引人的5个思路

    今天说讲述的5个思路是不同的,内容决定设计,留白,故事都和这种填鸭式的广告不是一个路子。而线上广告和传统广告最大的不同在于,它可以创造体验。

    2017-05-04
  • 大型的视觉设计系统都是怎么设计出来的?

    并不是Facebook的每一个产品都能在独特性和统一性之间保持平衡,但是这个视觉设计系统确实让Facebook 向前越近了一大步。

    2017-04-27
  • 高手课堂!「按钮系列」之按钮位置与用户体验的关系

    @Daidai丶呆  :本文主要给大家讲解:「确认」、「下一步」等这类存在于页面中的按钮在摆放时,对页面 or 产品造成的影响有哪些。

    2017-09-29
  • 在设计过程中,设计师如何输出一个更落地的动效呢?

    优秀的动效设计更能让用户从中感到惊喜,让用户感受到产品的温度和调性。

    2017-05-05
  • 【产品分析】微信拼手气红包的贪嗔痴

    春节期间火爆的“拼手气”红包,让用户疯狂点击拼手速网速,拼rp看金额,每一个环节都深深戳着用户的G点,高潮迭起。“拼手气”就是拼人品,那么,最佳手气者是不是有机可循呢?微信红包这样的设计目的在何处? Aaron毛…

    2015-03-05
  • 读书会第二期:《用户体验要素》(下)

    接上文···框架层1界面设计界面设计要做的全部事情就是选择正确的界面元素。界面元素的种类繁多,书里列举了复选框、单选框、文本框、下拉菜单、多选菜单、按钮等一系列网站设计中常用的控件,在2001年的时候这些控件就已经出现了,至今仍在大量使用,但是作者写这本书的时候并没有预料到目前的互联网行业有多么繁荣,所以近些年出现的很多新控件都没在书里。目前ios平台和安卓平台都有完善的设计规范可供参考,网上也可以找到海量的控件模板,只要耐心积累,多观...

    2018-04-13