效果图:

需求分析:

1、输入框焦点事件

onfocus:成为焦点, 点击输入框的时候,出现闪烁光标,此时可以输入内容。

onblur :失去焦点, 点击页面空白区域,光标消失。此时不可以输入内容。

2、获取元素

3、注册事件

2.1、onfocus:成为焦点, 点击输入框的时候,出现闪烁光标,此时可以输入内容

1)、显示ul

2)、自身边框改变 (通过新增search类名)

2.2、onblur :失去焦点, 点击页面空白区域,光标消失。此时不可以输入内容

1)、隐藏ul

2)、自身边框改变 (通过移除search类名)

源码如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}ul {list-style: none;}.mi {position: relative;width: 223px;margin: 100px auto;}.mi input {width: 223px;height: 48px;padding: 0 10px;font-size: 14px;line-height: 48px;border: 1px solid #e0e0e0;outline: none;transition: all 0.3s;}.mi .search {border: 1px solid #ff6700;}.result-list {display: none;position: absolute;left: 0;top: 48px;width: 223px;border: 1px solid #ff6700;border-top: 0;background: #fff;}.result-list a {display: block;padding: 6px 15px;font-size: 12px;color: #424242;text-decoration: none;}.result-list a:hover {background-color: #eee;}</style>
</head><body>
<div class="mi"><input type="search" placeholder="红米手机" /><ul class="result-list"><li><a href="#">全部商品</a></li><li><a href="#">红米手机</a></li><li><a href="#">小米10S</a></li><li><a href="#">小米笔记本</a></li><li><a href="#">小米手机</a></li><li><a href="#">云米空调</a></li><li><a href="#">云米智能机器人</a></li></ul>
</div><script>/*1.输入框焦点事件onfocus:成为焦点, 点击输入框的时候,出现闪烁光标,此时可以输入内容onblur :失去焦点, 点击页面空白区域,光标消失。此时不可以输入内容2.小米官网成为焦点: (1)显示ul  (2)自身边框改变 (通过新增search类名)失去焦点: (1)隐藏ul  (2)自身边框改变 (通过移除search类名)3. this关键字 : 环境对象。 常用于函数中,代表当前函数的所属环境。说人话: 相当于中文的 ‘我’ 字, 谁说的这个字,就代表谁4.js中this规则: 谁调用这个函数,this就指向谁* 事件处理函数中this一般指向事件源自身*///1.获取元素let input = document.querySelector('input')let ul = document.querySelector('.result-list')//2.注册事件//2.1 onfocus:成为焦点, 点击输入框的时候,出现闪烁光标,此时可以输入内容input.onfocus = function(){console.log('你点我了,我出现光标了,此时可以输入文字')//(1)显示ulul.style.display = 'block'//(2)自身边框改变 (通过新增search类名)this.classList.add('search')}//2.2 onblur :失去焦点, 点击页面空白区域,光标消失。此时不可以输入内容input.onblur = function(){console.log('你点其他地方了,我光标消失了,此时不可以输入文字')//(1)隐藏ulul.style.display = 'none'//(2)自身边框改变 (通过移除search类名)this.classList.remove('search')}</script>
</body>
</html>

HTML/CSS实现小米官网搜索框效果相关推荐

  1. html css 模仿小米官网搜索框

    写网页效果,掌握html,css,唯一的捷径就是多模仿,多练习.小米官网的搜索框效果看似简单,实际写代码的时候才发现要掌握好多css知识才能完成效果.浮动.导航条.鼠标经过.定位.文字框效果实现.js ...

  2. Outline,Input样式的设置,小米官网搜索框

    在做小米项目右上角的搜索框的时候,发现了该问题,现总结如下: outline outline和border类似,只不过outline不占用空间,而border占用空间 #box1{width: 300 ...

  3. 小米官网搜索框部分详解

    <!DOCTYPE html> <html>     <head>         <meta charset="utf-8" /> ...

  4. 用html+css实现小米官网的模拟

    小米官网制作 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF ...

  5. 用html和css仿作小米官网(静态)

    目录 一:准备工作 二:头部导航栏部分 三:中间照片部分 四:尾部文字部分​​​​​​​ 准备工作: 首先我们需要从小米官网的网页源文件上下载需要的图片等素材,其次我们需要准备一个reset.css的 ...

  6. css:动画 小米官网盒子阴影 心跳动画

    小米官网盒子阴影 <!DOCTYPE html> <html lang="en"><head><meta charset="UT ...

  7. HTML+CSS制作小米官网

    经过一个星期学习了中国大学MOOC上北京林业大学精品课--<Web前端开发>(对小白来说太友好).看完之后为了巩固学过的知识点,对着小米官网的布局敲了一遍.本着记录学习的想法发了这篇文章. ...

  8. HTML+CSS实现小米官网顶部导航栏

    效果图 效果图 html代码 <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...

  9. 【Web】HTML+CSS(No.55)实现小米官网首页静态效果

    模仿实现小米官网首页静态布局 需要素材点击图片联系我或私信.评论 效果图 HTML代码 <!DOCTYPE html> <html lang="en"> & ...

最新文章

  1. 工程是.java文件_1.8 工程相关解析(各种文件,资源访问)
  2. Json 不同语言的使用
  3. Spring系列之一 Spring MVC
  4. MySql项目中使用的小窍门
  5. zabbix setup.php出错,apache配置zabbix下setup.php无法显示
  6. struts配置访问后缀为.do,.action,.*
  7. sublime text 2 解决错误 [Decode error - output not utf-8]
  8. Koa框架教程,Koa框架开发指南,Koa框架中文使用手册,Koa框架中文文档
  9. [译] 深入理解 JavaScript 事件循环(二)— task and microtask
  10. linux 主流 集群 软件,Linux 高可用(HA)集群之Pacemaker详解
  11. 【Linux 内核网络协议栈源码剖析】sendto 函数剖析
  12. 计算机学报英语,修改稿要求-计算机学报.PDF
  13. eclipse java转class_Eclipse中的Java项目:无法解析java.lang.Object类型。 它是从所需的.class文件间接引用的...
  14. 性能测试第七课--用户定义变量用户参数
  15. 鸿蒙开发|呼吸训练实战项目(二)
  16. Tina-TI电路仿真初体验(德州仪器电路仿真软件)
  17. GluonCV跑代码经常碰到的问题
  18. 图片去水印工具-图片去水印的工具有哪些
  19. 一代才女林徽因 人生若只如初见
  20. 芋道admin-ui启动失败提示npm install --save highlight.js/lib/highlight highlight.js/styles/github-gist.css

热门文章

  1. 2021-08-01 大数据岗位入职系列 前传:转战大数据
  2. 护卫神怎么安装mysql,护卫神·主机大师增加一键安装SQLServer功能_护卫神
  3. adb shell dumpsys 命令 查看内存是否泄露
  4. 妖精的尾巴魔导少年 交易行赚大钱攻略
  5. VM15.5.0+Ubuntu16.04.6+ns2.35仿真平台
  6. JavaScript面试题看这一篇就够了,简单全面一发入魂(持续更新 step1)
  7. COMSOL with Matlab连接模拟仿真
  8. 【 数据结构 】单链表的实现 - 详解(C语言版)
  9. 单链表的简单实现(C语言)
  10. [SECURITY]--01