表单/表格

表单input输入框聚焦动画特效

阿里云


这是一组效果超酷的表单 input 输入框聚焦 CSS3 动画特效。这组特效共 24 种不同的聚焦动画效果,分为 3 个类别,分别是边框动画特效,背景动画特效和浮动标签动画特效。这组输入框聚焦特效主要使用 CSS3 :focus 选择器来制作。:focus 选择器允许我们在鼠标进入元素时为元素设置属性。

HTML 结构

下面是第一种聚焦效果的 HTML 结构:

也想出现在这里?联系我们
创客主机
  1. <div class="col-3">
  2.   <input class="effect-1" type="text" placeholder="Placeholder Text">
  3.     <span class="focus-border"></span>
  4. </div>

CSS 样式

col-3 class 类用于布局,设置每一行分为 3 个列。

  1. .col-3{
  2.   float: left;
  3.   width: 27.33%;
  4.   margin: 40px 3%;
  5.   position: relative; 
  6. }

然后为 input 元素设置一些通用样式。

  1. input[type="text"]{
  2.   font: 15px/24px "Lato", Arial, sans-serif;
  3.   color: #333;
  4.   width: 100%;
  5.   box-sizing: border-box;
  6.   letter-spacing: 1px;
  7. }

effect-1 是 24 种聚焦效果中的第一种效果。它将 input 元素的边框设置为 0,然后通过 border-bottom 属性为 input 元素设置底部的边框样式为 1 个像素的灰色实线。背景颜色为透明色。

  1. .effect-1{
  2.   border: 0;
  3.   padding: 4px 0;
  4.   border-bottom: 1px solid #ccc;
  5.   background-color: transparent;
  6. }

.focus-border 是输入框聚焦后的边框样式。它采用绝对单位,位置在输入框的左下角位置,高度为 2 像素,开始时宽度被设置为 0,不可见。并设置了 0.4 秒的过渡动画效果。

  1. .effect-1 ~ .focus-border{
  2.   position: absolute;
  3.   bottom: 0;
  4.   left: 0;
  5.   width: 0;
  6.   height: 2px;
  7.   background-color: #3399FF;
  8.   transition: 0.4s;
  9. }

当输入框聚焦时以及在输入框中有内容时,将.focus-border 的宽度设置为 100%。

  1. .effect-1:focus ~ .focus-border,
  2. .has-content.effect-1 ~ .focus-border{
  3.   width: 100%;
  4.   transition: 0.4s;
  5. }

JavaScript

该输入框聚焦特效中使用一些 jQuery 代码来判断输入框中是否已近输入了内容,并为它添加和移除相应的 class 类。

  1. $(window).load(function(){
  2.   $(".col-3 input").val("");
  3.   $(".input-effect input").focusout(function(){
  4.     if($(this).val() != ""){
  5.       $(this).addClass("has-content");
  6.     }else{
  7.     $(this).removeClass("has-content");
  8.     }
  9.   });
  10. });

表单 input 输入框聚焦动画特效

已有 496 人购买
  • t4ny
查看演示升级 VIP立刻购买

演示地址 下载地址
收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!