div模拟输入框input/textarea
//html
<!--填写信息-->
<div class="info-wrap">
<form class="formToCheck" id="formToCheck" method="get" action="#">
<div class="info-box">
<div contenteditable="true" class="link-textarea user-name" data-form-type="name"></div>
</div>
<div class="info-box">
<div contenteditable="true" class="link-textarea user-moblie" data-form-type="mobile"></div>
</div>
<div class="adress-box">
<div contenteditable="true" class="link-textarea" data-form-type="address"></div>
</div>
<div class="reason-box">
<div class="reason-tilte">申请理由</div>
<div contenteditable="true" class="link-textarea" data-form-type="reason"></div>
</div>
</form>
</div>
//在IOS中<div contenteditable="true"></div>中点击时可以弹出键盘但是无法输入。加一个样式-webkit-user-select:text就可以了。
.link-textarea:focus {
border: none;
outline: none;
-webkit-appearance: none;
-webkit-user-select: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-webkit-touch-callout: none;
-webkit-text-size-adjust: none;
color: rgba(0, 0, 0, 0);
background-color: #fff
}
.user-name:empty:after {
content: '姓名';
color: #ababab;
font-size: 15px;
text-align: left;
}
.user-moblie:empty:after {
content: '手机号';
color: #ababab;
font-size: 15px;
text-align: left;
}
.info-box,
.adress-box {
width: 90.625%;
margin: 0 auto;
height: auto;
min-height: 45px;
border: 1px solid #e8e8e8;
border-radius: 6px;
margin-bottom: 9px;
box-sizing: border-box;
}
.info-box .link-textarea,
.adress-box .link-textarea {
margin: 12px 0px 12px 9px;
font-size: 15px;
color: #3b3b3b;
outline: 0;
word-wrap: break-word;
overflow-x: hidden;
overflow-y: auto;
-webkit-user-modify: read-write-plaintext-only;
-webkit-user-select:text;
}
.adress-box .link-textarea:empty:after {
content: '详细地址';
color: #ababab;
font-size: 15px;
text-align: left;
}
.reason-box {
width: 90.625%;
margin: 0 auto;
height: auto;
min-height: 100px;
border: 1px solid #e8e8e8;
border-radius: 6px;
box-sizing: border-box;
}
.reason-box .link-textarea {
margin: 10px 0px 12px 9px;
font-size: 15px;
color: #3b3b3b;
outline: 0;
word-wrap: break-word;
overflow-x: hidden;
overflow-y: auto;
-webkit-user-modify: read-write-plaintext-only;
-webkit-user-select:text;//兼容ios上点击可弹出键盘无法输入的问题
}
.reason-box .link-textarea:empty:after {
content: '以申请理由为基本评判,请认真填写。';
color: #ababab;
font-size: 11px;
text-align: left;
}
.reason-tilte {
line-height: 15px;
font-size: 15px;
color: #ababab;
margin: 12px 0 0 9px;
}
//为什么会用div来模拟输入框input?
因为,input只能一行显示出输入的文字,如果需要是多行显示出输入的文字就可以用这种方法,
//多行显示出输入的文字,那为什么不直接用textarea呢?
textarea和input都不支持伪类(after,empty,focous等),想要在textarea或者input元素上使用伪类来实现样式是不支持的
div模拟输入框input/textarea的更多相关文章
- div模拟文本框textarea
需求:利用highlight.js对文本框中的内容进行高亮显示 1.highlight.js使用 js中:<script src="js/highlight/highlight.pac ...
- 使输入框(input & textarea)变为只可读状态readonly="readonly",禁用输入框disabled="disabled"
使输入框变为只可读状态 readonly="readonly" <input class="select-city" placeholder=" ...
- 使用div模拟textarea,实现文本输入框高度自适应(附:js控制textarea实现文本输入框高度自适应)
一.使用textarea标签进行多行文本的输入有很多限制,比如不能实现高度自适应,会出现难看的滚动条等问题. HTML5中添加了一个新属性contenteditable,该属性可以让input,tex ...
- 使用contenteditable+div模拟textarea文本域实现高度自适应
使用contenteditable+div模拟textarea文本域实现高度自适应 开发过程中由于需要在发送消息的时候需要有一个可以高度自适应的文本域,一开始是使用textarea并搭配auto-si ...
- div模拟textarea
有些Weber可能没有用过contenteditable这个属性,如果想编辑一个DIV里面的内容,这个属性是一个非常不错的选择 <div contenteditable="true ...
- div模拟textarea文本域轻松实现高度自适应——张鑫旭
by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1362 一.关于tex ...
- div模拟textarea在ios下不兼容的问题解决
今天发现一个好东西,赶紧记下来,我在用textarea的时候,想要自适应高度,这样就不会出现滚动条.网上找了很多,都是用div模拟的,但是好扯淡,div模拟的在ios下不能聚焦并且不能输入.真坑... ...
- Bootstrap 表单控件一(单行输入框input,下拉选择框select ,文本域textarea)
单行输入框,常见的文本输入框,也就是input的type属性值为text.在Bootstrap中使用input时也必须添加type类型,如果没有指定type类型,将无法得到正确的样式,因为Bootst ...
- div模拟textarea实现高度自增长
今天突然有位前端的朋友问我textarea怎么实现高度随内容自增长,我一下子懵了,首先想到的是用js改变textarea的高度,但是百度了很多参考代码效果都不是很理想. 因为之前实际项目中用的text ...
随机推荐
- 2017-3-9 SQL server 数据库
数据库的定义:数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,简单说数据库是一些存储在硬盘上的数据文件,随着信息技术和市场的发展,数据管理不再仅仅是存储和管理数据,而转变成用户所 ...
- C#:求100到200之前所有的质数和
- wemall app商城源码Fragment中监听onKey事件
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享android开发Fragment中监听onK ...
- 3408: [Usaco2009 Oct]Heat Wave 热浪
3408: [Usaco2009 Oct]Heat Wave 热浪 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 67 Solved: 55[Subm ...
- GUID的获取
全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符. GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx ...
- 基于JAVA语言的selenium测试基础总结
目录一.基本语句1.循环控制(break,continue)3.字符的替换(replace,repalceFirst,replaceAll,regex)4.字符串的连接("+",a ...
- 修改mysql方法
我已验证: 方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('n ...
- Redis Sentinel中的机制与原理详解
序言 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案.实际上这意味着你可以使用Sentinel模式创建一个可以不用人为干预而应对各种故障的Redis部署. 它的主要功能有以 ...
- mybatis基础学习4-插件生成器
1:安装 2:在所建项目单击右键输入mybatis如下图 *建项目文件时不用建包和类,在配置文件里写即可生成 3:之后在项目生成 自己建的表(这个必须) 单击右键 即可 --------------- ...
- SQL AlawaysOn 之一:安装域控制器
一.准备阶段 1. 计算机名称命名 2.IP地址修改.DNS修改 IP地址和DNS不一定要和图上的一致,只要固定就行了 二.安装阶段 1.服务器管理器,仪表盘,点击“添加角色和功能” 2.添加角色和 ...