首页 > 编程语言 >Web入门:JavaScript搜索展开

Web入门:JavaScript搜索展开

时间:2022-12-02 15:32:55浏览次数:40  
标签:Web transition 入门 flex color JavaScript 6px width 10px

欢迎来的我的小院,恭喜你今天又要涨知识了!

案例内容

利用JavaScript实现搜索框的移动展开。

演示

学习

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>小院里的霍大侠</title>
  </head>
  <body>
    <div class="search-bar-container active">
      <img class="magnifier" src="https://cdn4.iconfinder.com/data/icons/evil-icons-user-interface/64/magnifier-512.png">
      <input type="text" class="input" placeholder="Search...">
    </div>
  </body>
  <style>
    body {
      margin: 0;
      display: flex;
      justify-content: center;
      height: 100vh;
      align-items: center;
      background-color: aliceblue;
    }
    .search-bar-container{
      display: flex;
      align-items: center;
      background-color: aliceblue;
      padding: 5px;
      width: 300px;
      height: 50px;
      border-radius: 50px;
      box-shadow: 6px 6px 10px rgba(0,0,0,0.2),-6px -6px 10px rgba(255,255,255,0.7);
      margin: 10px;
      position: relative;
      transition: width 1.5s;
    }
    .magnifier{
      width: 25px;
      cursor: pointer;
      position: absolute;
      left: 20px;
    }
    .input{
      background-color: transparent;
      border: none;
      margin: 10px 50px;
      width: 100%;
      outline: none;
      color: rgb(100,100,100);
      transition: width 1s;
      transition-delay: 0.5s;
    }
    .active.search-bar-container{
      width: 50px;
    }
    .active.input{
      width: 0;
    }
  </style>
  <script>
    const searchBarContainerEI=document.querySelector(".search-bar-container");
    const magnifierEI=document.querySelector(".magnifier");
    magnifierEI.addEventListener("click",()=>{
      searchBarContainerEI.classList.toggle("active");
    });
  </script>
</html>

总结思考

学习点: 1、align-items:flex子项们相对于flex容器在垂直方向上的对齐方式 2、transition :设置元素的过渡效果 3、cursor:定义了鼠标指针放在一个元素边界范围内时所用的光标形状 4、boder:none :没有边框 5、outline:none :去除输入框蓝框 6、transition-delay :规定过渡效果何时开始 7、document.querySelector()返回一个元素的信息 8、element.classList.toggle:当点击标签时,会给这个标签添加或消除一个类

使用JavaScript完成搜索框的移动展开,可以使界面更加生动有趣,让网页更加多样化。

关注我,跟着我每天学习一点点,让你不在枯燥,不在孤单..

全网可搜:小院里的霍大侠, 免费获取简单易懂的实战编程案例。编程/就业/副业/创业/资源。

标签:Web,transition,入门,flex,color,JavaScript,6px,width,10px
From: https://blog.51cto.com/huodaxia/5907080

相关文章

  • OpenCV4之C++入门详解
    OpenCV4之C++入门详解1、VisualStudio安装及环境配置与搭建1.下载地址:https://my.visualstudio.com/Downloads?q=Visual,下载后按照说明安装即可登录账号下载即可,建议下......
  • Python高级-mini-web框架、添加路由、MySQL功能-笔记
    此篇文章是接着上一篇文章写的​​《Python高级-WSGI、mini-web框架-笔记》​​下一篇​​《Python高级-mini-web框架、添加log日志、路由支持正则-笔记》​​1.miniweb框......
  • Python高级-mini-web框架、添加log日志、路由支持正则-笔记
    接着上一篇介绍mini-web框架​​《Python高级-mini-web框架、添加路由、MySQL功能-笔记》​​​8.mini-web框架-路由支持正则importpymysqlimporttimeimportosimportret......
  • 10分钟使用CXF和SPRING创建REST webservice应用
    CXF跟spring联合起来,搞restwebservice的确很方便的.下面快速学习下,用到的是CXF,SPRING和MAVEN1MAVEN配置...<dependency><groupId>org.spri......
  • 使用CXF创建REST WEBSERVICE
    简单小结下CXF跟REST搭配webservice的做法,直接举代码为例子:1order.javapackagecom.example.rest;importjavax.xml.bind.annotation.XmlRootE......
  • javascript: jquery-confirm.js
     <!doctypehtml><html><head><metacharset="utf-8"><metaname="viewport"content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.......
  • asp.net 2.0中不同web控件之间的相互调用
    在asp.net2.0中,要在不同的web控件之间互相调用,必须要<%@ReferenceVirtualPath="另一控件名称“>来引用,举例如下default.aspx:<formid="form1"runat="server">    ......
  • 1.C++入门基础(上)
    2022-04-29-摘要C++关键字命名空间缺省参数函数重载extern“C”引用总结目录目录2022-04-29-摘要总结目录C++关键字命名空间命名空间定义命名空间的使用指定......
  • Mybatis入门笔记
    Mybatis环境JDBCjava基础JDK1.8Mysql5.7maven3.6.1开发工具ideaJunitSSM框架:配置文件的最好方式:看官网文档1简介1.1什么是mybatis?MyBatis是一款优秀的......
  • weblogic12版本节点启动报错问题处理
    问题:<Sep12,202211:00:13AMCST><Warning><DeploymentService><BEA-290074><Deploymentserviceservletreceivedfiledownloadrequestforfile"security/Se......