HTML+CSS:动态搜索框

效果演示

42-动态搜索框.gif

这段代码实现了一个简单的搜索栏效果。页面背景为从天蓝色到深蓝色的渐变色,搜索栏包括一个圆形背景的搜索图标和一个输入框。当用户点击搜索图标时,输入框会从搜索图标的位置滑出,显示一个输入框和一个清除按钮。用户可以在输入框中输入搜索内容,点击右侧的按钮进行搜索。整体布局居中显示在页面上。

Code

<div class="searchBar"><div class="icon"><i class="iconfont icon-sousuoxiao"></i></div><div class="textInput"><input class="inp" type="text" placeholder="请输入搜索关键字"><button class="goBtn">go</button><div class="clear"><i class="iconfont icon-close"></i></div></div>
</div>
* {margin: 0; /* 设置所有元素的外边距为0 */padding: 0; /* 设置所有元素的内边距为0 */box-sizing: border-box; /* 设置盒模型为border-box,包括内边距和边框在内的尺寸计算方式 */
}body {width: 100vw; /* 设置body宽度为视口宽度 */height: 100vh; /* 设置body高度为视口高度 */background: linear-gradient(to bottom, skyblue, #003462); /* 设置背景为从上到下的线性渐变色 */display: flex; /* 使用flex布局 */justify-content: center; /* 水平居中 */align-items: center; /* 垂直居中 */
}.searchBar {width: 60px; /* 设置搜索栏宽度 */height: 60px; /* 设置搜索栏高度 */background-color: #fff; /* 设置背景颜色为白色 */box-shadow: 0 0 10px rgba(0, 0, 0, .4); /* 设置阴影效果 */border-radius: 60px; /* 设置圆角为半径的大小 */position: relative; /* 设置相对定位 */overflow: hidden; /* 超出部分隐藏 */transition: .5s; /* 设置过渡效果时长为0.5秒 */
}.icon {width: 60px; /* 设置图标容器宽度 */height: 60px; /* 设置图标容器高度 */display: flex; /* 使用flex布局 */justify-content: center; /* 水平居中 */align-items: center; /* 垂直居中 */cursor: pointer; /* 鼠标移上去显示手型 */
}.icon i {color: dodgerblue; /* 设置图标颜色为深蓝色 */font-size: 30px; /* 设置图标大小为30像素 */
}.textInput {width: 320px; /* 设置输入框宽度 */height: 60px; /* 设置输入框高度 */display: flex; /* 使用flex布局 */justify-content: center; /* 水平居中 */align-items: center; /* 垂直居中 */background-color: blue; /* 设置背景颜色为蓝色 */position: absolute; /* 设置绝对定位 */top: 0; /* 顶部对齐 */left: 60px; /* 距离左侧60像素 */
}.textInput input {width: 100%; /* 输入框宽度占满父容器 */height: 100%; /* 输入框高度占满父容器 */border: none; /* 去除边框 */outline: none; /* 去除外边框 */font-size: 18px; /* 设置字体大小为18像素 */
}.clear {width: 15px; /* 设置清除按钮宽度 */height: 15px; /* 设置清除按钮高度 */position: absolute; /* 设置绝对定位 */right: 22%; /* 距离右侧22% */top: 50%; /* 顶部对齐 */transform: translateY(-50%); /* 垂直居中 */cursor: pointer; /* 鼠标移上去显示手型 */display: flex; /* 使用flex布局 */justify-content: center; /* 水平居中 */align-items: center; /* 垂直居中 */
}.clear i {color: #999; /* 设置清除图标颜色为灰色 */
}.goBtn {width: 12%; /* 设置按钮宽度为父容器宽度的12% */height: 60%; /* 设置按钮高度为父容器高度的60% */position: absolute; /* 设置绝对定位 */top: 20%; /* 距离顶部20% */right: 0; /* 靠右对齐 */border-radius: 8px; /* 设置圆角为8像素 */outline: none; /* 去除外边框 */border: none; /* 去除边框 */color: #fff; /* 设置文字颜色为白色 */box-shadow: 0 0 2px rgba(0, 0, 0, .4); /* 设置阴影效果 */background: linear-gradient(skyblue, deepskyblue); /* 设置背景为从天蓝色到深天蓝色的线性渐变色 */cursor: pointer; /* 鼠标移上去显示手型 */
}.changeWidth {width: 400px; /* 设置具有changeWidth类名元素的宽度为400像素 */
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2804763.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

西门子200SMART SB AE01的正确用法

西门子200SMART SB AE01&#xff0c;就是1路模拟量输入的SB板。信号板直接安装在 SR/ST CPU 本体正面&#xff0c;无需占用电控柜空间&#xff0c;安装、拆卸方便快捷。有些小型的系统如果只有1路模拟量输入&#xff0c;或者模块配置中恰好缺少1路模拟量输入&#xff0c;就可以…

33.云原生之Istio管理任何七层流量

云原生专栏大纲 文章目录 Istio存在的问题Aeraki介绍Aeraki 的解决方案支持的协议支持的特性 安装AerakiAeraki教程采用 ServiceEntry 的 Demo 应用使用 Dubbo2Istio 对接 Dubbo 注册表 的 Demo 应用&#xff08;Interface 级流量治理&#xff09; Service Mesh 中有大量的七层…

智能光耦合器的特点概述

在不断发展的技术领域&#xff0c;光耦合器在确保无缝通信和可靠信号传输方面的作用变得越来越关键。本文深入探讨了光耦合器的复杂性&#xff0c;阐明了其重要性&#xff0c;探索了进步&#xff0c;并解决了光耦合器技术人员面临的常见问题。 光耦合器基础知识&#xff1a; 光…

力扣hot100题解(python版1-6题)

1、两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以按…

SpringBoot和SpringCloud的区别,使用微服务的好处和缺点

SpringBoot是一个用于快速开发单个Spring应用程序的框架&#xff0c;通过提供默认配置和约定大于配置的方式&#xff0c;快速搭建基于Spring的应用。让程序员更专注于业务逻辑的编写&#xff0c;不需要过多关注配置细节。可以看成是一种快速搭建房子的工具包&#xff0c;不用从…

List集合之UML、特点、遍历方式、迭代器原理、泛型、装拆箱及ArrayList、LinkedList和Vector的区别

目录 ​编辑 一、什么是UML 二、集合框架 三、List集合 1.特点 2.遍历方式 3.删除 4.优化 四、迭代器原理 五、泛型 六、装拆箱 七、ArrayList、LinkedList和Vector的区别 ArrayList和Vector的区别 LinkedList和Vector的区别 一、什么是UML UML&#xff08;Unif…

C# winfroms使用socket客户端服务端代码详解

文章目录 1️⃣ 通信相关说明1.1服务端与客户端1.2 信息发送原理1.3 信息接收原理 2️⃣ socket代码2.1 客户端代码2.2 服务端代码 3️⃣ 定时任务处理报文3.1 Timers定时任务 优质资源分享 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_4315141…

【扩散模型】【网络结构探索】神经网络扩散:Neural Network Diffusion(论文解读)

项目地址&#xff1a;https://github.com/NUS-HPC-AI-Lab/Neural-Network-Diffusion 文章目录 摘要一、前言二、Nerual Network Diffusion &#xff08;神经网络扩散&#xff09;2.1扩散模型&#xff08;预备知识&#xff09;2.2 总览2.3 参数自动编码器2.4 参数生成 三、实验3…

RocketMQ快速实战以及集群架构原理详解

RocketMQ快速实战以及集群架构原理详解 组成部分 启动Rocket服务之前要先启动NameServer NameServer 提供轻量级Broker路由服务&#xff0c;主要是提供服务注册 Broker 实际处理消息存储、转发等服务的核心组件 Producer 消息生产者集群&#xff0c;通常为业务系统中的一个功…

xff注入 [CISCN2019 华东南赛区]Web111

打开题目 看见smarty 想到模板注入 又看见ip 想到xff注入 一般情况下输入{$smarty.version}就可以看到返回的smarty的版本号。该题目的Smarty版本是3.1.30 在Smarty3的官方手册里有以下描述: Smarty已经废弃{php}标签&#xff0c;强烈建议不要使用。在Smarty 3.1&#xff…

07 MyBatis之高级映射 + 懒加载(延迟加载)+缓存

1. 高级映射 例如有两张表, 分别为班级表和学生表 自然, 一个班级对应多个学生 像这种数据 , 应该如果如何映射到Java的实体类上呢? 这就是高级映射解决的问题 以班级和学生为例子 , 因为一个班级对应多个学生 , 因此学生表中必定有一个班级编号字段cid 但我们在学生的实体…

HarmonyOS学习--三方库

文章目录 一、三方库获取二、常用的三方库1. UI库&#xff1a;2. 网络库&#xff1a;3. 动画库&#xff1a; 三、使用开源三方库1. 安装与卸载2. 使用 四、问题解决1. zsh: command not found: ohpm 一、三方库获取 在Gitee网站中获取 搜索OpenHarmony-TPC仓库&#xff0c;在t…

Day20_网络编程(软件结构,网络编程三要素,UDP网络编程,TCP网络编程)

文章目录 Day20 网络编程学习目标1 软件结构2 网络编程三要素2.1 IP地址和域名1、IP地址2、域名3、InetAddress类 2.2 端口号2.3 网络通信协议1、OSI参考模型和TCP/IP参考模型2、UDP协议3、TCP协议 2.4 Socket编程 3 UDP网络编程3.1 DatagramSocket和DatagramPacket1、Datagram…

强大的文本绘图——PlantUML

PlantUML是一款开源工具&#xff0c;它允许用户通过简单的文本描述来创建UML图&#xff08;统一建模语言图&#xff09;。这种方法可以快速地绘制类图、用例图、序列图、状态图、活动图、组件图和部署图等UML图表。PlantUML使用一种领域特定语言&#xff08;DSL&#xff09;&am…

PostMan使用自带js库base64编码、sha256摘要、环境变量的使用

目录 1、环境变量的使用2、base64编码、sha256摘要、以及脚本的使用3、脚本代码 在请求调试接口的过程中&#xff0c;因为要使用大量相同的参数&#xff0c;使用变量的方式能很大程度上减轻接口调用的工作量 版本说明&#xff1a;Postman for Windows&#xff0c;Version&#…

BUGKU-WEB 备份是个好习惯

题目描述 题目截图如下&#xff1a; 进入场景看看&#xff1a; 解题思路 看源码看提示&#xff1a;备份是个好习惯扫描目录md5弱比较 相关工具 御剑md5解密&#xff1a;https://www.somd5.com/ 解题步骤 看到的这串字符&#xff0c;有点像md5&#xff1f; d41d8cd98…

【PCL】(十二)使用ConditionalRemoval或RadiusOutlierRemoval滤波器对点云进行滤波

&#xff08;十二&#xff09;使用ConditionalRemoval 或 RadiusOutlierRemoval滤波器对点云进行滤波 RadiusOutlierRemove滤波器删除PointCloud中在指定半径的邻域范内&#xff0c;邻点没能达到指定数量的点。下图中&#xff0c;如果指定了邻点数为1&#xff0c;则黄色点将从…

亿道丨三防平板电脑厂家推荐丨三防平板PAN智能化赋能

随着科技的不断进步和人们对智能化产品的需求日益增长&#xff0c;三防平板迎来了智能化赋能的时代。通过融合创新科技&#xff0c;三防平板实现了更高的性能、更智能的功能以及更广泛的应用场景&#xff0c;引领着未来的发展潮流。 一、智能化技术提升性能 随着技术的进步&…

Nginx网络服务四-----日志、Nginx压缩和ssl

1.自定义访问日志 如果访问出错---404&#xff0c;可以去看error.log日志信息 访问日志是记录客户端即用户的具体请求内容信息&#xff0c;而在全局配置模块中的error_log是记录nginx服务器运行时的日志保存路径和记录日志的level&#xff0c;因此两者是不同的&#xff0c;而且…

openssl 生成nginx自签名的证书

1、命令介绍 openssl req命令主要的功能有&#xff0c;生成证书请求文件&#xff0c; 查看验证证书请求文件&#xff0c;还有就是生成自签名证书。 主要参数 主要命令选项&#xff1a; -new :说明生成证书请求文件 -x509 :说明生成自签名证书 -key :指定已…