1.01.13表单元素

1.图片自适应容器

  • 图片自适应的样式
    • 样式如下:
      <div>
          <img>
      </div>
      
      <style> 
          div{
              width:500px;
          }
      
          img{
              /*宽度等于父元素宽度的100% */
              width: 100%;
              /*高度由图片的宽高比例等比例缩放*/ 
              height: auto;
              /*因为行内块元素的原因,底部会产生缝隙,防止图片底部产生缝隙*/
              display: block;
          }
      </style>
      

2.input标签

1.控件类型

  1. 输入类型

    • <input type="text" >

      • 单行文本输入框:只能单行输入
      • value属性:默认输入在文本框的内容
      • placeholder属性:当文本没输入时,起到提示作用的文本占位符
    • <input type="password" >

      • 密码输入框
      • 密码框输入不可见,保密性很低,真正的密保性还得看后端,对于前端来说,不可见是形同虚设的
    • <input type="number" >

      • 数字输入框
    • <input type="tel" >

      • 手机输入框
      • pattern属性:规定输入规则,限制某种文本格式输入不对会弹窗
    • <input type="email" >

      • 邮箱输入框
    • <input type="url" >

      • 链接输入框
    • <input type="search" >

      • 搜索输入框
    • 小结:规定了type属性的类型,输入框就会有一定的规则,若要改规则可使用pattern属性进行改

  2. 按钮类型

    • <input type="button" >

      • 普通按钮
    • <input type="submit" >

      • 提交按钮
      • 配合表单使用才生效
    • <input type="reset" >

      • 重置按钮
      • 配合表单使用才生效
    • <input type="image" >

      • 图片按钮
      • 配合表单使用才生效,起到提交的作用
      • 使用图像按钮在表单提交时,点击该按钮,提交的参数会带上鼠标在图片上点击的坐标
  3. 复选框

    • <input type="checkbox" >
      • 复选框
  4. 单选框

    • <input type="radio" >

      • 实现单选需要相同的控件名称,例如:
      <div>
      /*单选框(name属性相同,才可以实现单选功能)*/
          男<input type=" radio" name="sex">
          女<input type="radio" name="sex">
      </div>
      
  5. 日期类型

    • <input type="date" >
      • 日期
    • <input type="time" >
      • 时间
    • <input type="datetime-local" >
      • 日期和时间
    • <input type="month" >
      • 月份
    • <input type="week" >
  6. 文件域

    • <input type="file" >
      • 上传文件按钮
  7. 隐藏域

    • <input type="hidden" >
      • 隐藏按钮,没有什么用
  8. 图像域

    • <input type="image" >
      • 图像按钮
      • 放在form表单里起到提交按钮的作用
      • 使用图像按钮在表单提交时,点击该按钮,提交的参数会带上鼠标在图片上点击的坐标
  9. 滑块

    • <input type="range" >
      • 滑块
      • 其中的step属性:每移动一步的长度
  10. 颜色

    • <input type="color" >
      • 颜色选择

2.属性

  1. type属性:控件类型
  2. value属性:输入框的值
  3. placeholder属性:占位符
  4. disabled属性:禁用的(非键值对属性)
    • 加了disabled属性的按钮不可以点
  5. readonly属性:只读不写(非键值对属性)
    • 不允许修改文本框内容
    • 一般type="text"才起作用
  6. hidden属性:可以隐藏元素(非键值对属性)
  7. checked属性:默认选中(非键值对属性)
    • 一般type="checkbox"或"radio"才起作用
  8. autofocus属性:自动获取焦点(非键值对属性)
    • 一般type="text"才起作用
    • 一个页面只能有一个输入框自动获取焦点,设置了多个也只有一个生效
  9. name属性
    • form表单的提交作用只会提交带有name属性的元素内容,即有name属性的文本框才能传输文本框内容
    • 输入框的历史记录会对应name属性,调换两个name属性,两个输入框的历史记录就会调换,一般含有提交按钮的表单中的文本输入框才会有历史记录
  10. autocomplete属性:是否自动填充历史记录
    • 属性值有:on/off
  11. pattern属性:文本匹配模式的规定
    • 一般控件type=password,tel,text等特别规定时会用到
    • 属性值要使用正则表达式的写法
  12. accept属性:限制我们上传的文件类型
    • 一般控件type=file时才起作用
  13. step属性:限制滑块的步长
    • 一般控件类型type=range时才起作用
  14. min属性:控制最小值
    • type=number,range是才起作用
  15. max属性:控制最大值
    • type=number,range是才起作用
  16. minlength属性:限制最小输入长度
  17. maxlength属性:限制最大输入长度

3.form表单

  • form表单提交有阉割版ajax的作用
    1. 属性
      • action属性:请求地址
      • method属性:表单数据提交的方式
        • get:明文传输,能看见传输内容
        • post:看不见传输内容
      • target属性:服务器返回的数据 如何打开
        • _self当前窗口打开
        • _blank新窗口打开
      • name属性:是表单控件的名称, 提交数据时 会以 “控件名称=控件值” 的方式提交数据
          <!-- 提交数据, 需要要表单里面的控件 有name属性 -->
          <!-- name属性是表单控件的名称, 提交数据时 会以 "控件名称=控件值" 的方式提交数据 -->
          <div>用户名: <input type="text" placeholder="请输入用户名" name="username"> </div>
          <div class="pwd">密   码: <input class="pwd_ipt" type="password" placeholder="请输入密码" name="password"> </div>
      
          <div>性别: 
              <input type="radio" name="sex" value="0">男
              <input type="radio" name="sex" value="1">女
          </div>
          
          <div>兴趣
              <input type="checkbox" name="hobby" value="唱歌">唱歌
              <input type="checkbox" name="hobby" value="跳舞">跳舞
              <input type="checkbox" name="hobby" value="游泳">游泳
          </div>
          
          <div>
              上传头像: <input type="file" name="file">
          </div>
      
          <div>
              <!-- 提交和重置按钮要搭配form表单才可以生效 -->
              <input type="submit">
              <input type="reset">
              <input type="button" value="普通按钮">
              <!-- <input type="image" src=""> -->
          </div>
      </form>```
      

4.label标签

  • 用法

    • label标签没有任何样式
    • 用label标签包裹文字和输入框,可以点击文字激活输入框,提高用户体验(此时不能使用for属性,否则不生效)
    • 利用label标签的for属性,for=“某个输入框的id”,label包裹文字,可以点击该包裹文字激活对应id的输入框
    • 例如:(点击文字手机号码会激活id=phone的输入框)
      <label for="phone">手机号码</label> <input id=" phone" type="te1" placeholder=" 请输入手机号码">
        <label for="id">男</label>
        <input id="id" type="radio" name="sex">  
        <label><input type="radio" name="sex"> 女 </label>
    </div>```
    

5.文本域(多行文本输入框)textarea标签

  • 用法
    • 可以进行多行文本的输入
    • <textarea></textarea>
  • 属性
    • cols属性:文本框的宽度
    • rows属性 文本框的高度
    • cols与rows不建议使用
      • 不同浏览器对上述两个属性的理解不同,所表现出来的尺寸也不同,建议用width和height替代(所有浏览器对像素px的理解是相同的)
    • <textarea>括住的内容会保留文本格式输出到文本框内
    • 其不具备value属性

6.按钮标签

  • <button></button>
  • <input type="button">的比较:
    • button按钮可以使用图片,更多文字等信息,它可以创建更加丰富的按钮样式
    • 在form标签中建议使用input的按钮
    • 使用button标签不能忘记添加type属性,因为不同浏览器的button默认type值不一样,type值不一样代表button标签的功能不一样

7.下拉框标签

  1. 用法
  • <select></select>下拉框
  • <option></option>下拉项
  • <optgroup></optgroup>下拉分组
    • 用label属性作下拉分组的组名
  • 例子:
    <select>
        <optgroup label="第一组">
                <option value="">第一组1选项</option>
                <option value="">第一组2选项</option>
            </optgroup>

            <optgroup label="第二组">
                <option value="">第二组1选项</option>
                <option value="">第二组2选项</option>
            </optgroup>
    </select>
  • option的value属性中的值是表单提交时被发送到服务器的值
  1. select的属性

    • size属性:下拉菜单显示几条选项
    • multiple属性:让下拉菜单可以多选(非键值对属性)
    • 含有name属性的select,它的数据在form表单中是可以提交的,当option有value时,提交value的值,没有value时,提交的是option标签包裹的值
  2. option属性

    • selected属性:默认选中状态(非键值对属性)
  3. 下拉框的第一个选项可以这样写去起到提示作用

    • <option disabled selected hidden>请选择你的选项</option>

8.fieldset、legend标签 不推荐使用

   <!-- 边框 -->
   <fieldset>
       <!-- 标题 -->
       <legend>登录</legend>

       <div>用户名: <input type="text"></div>
       <div class="pwd">密   码: <input type="password"></div>
       <input class="ipt" type="submit">
       
   </fieldset>```





用
<!-- 边框 -->
<fieldset>
    <!-- 标题 -->
    <legend>登录</legend>

    <div>用户名: <input type="text"></div>
    <div class="pwd">密   码: <input type="password"></div>
    <input class="ipt" type="submit">
    
</fieldset>```
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值