css3做幽灵按钮

前端学习(266):justify-content <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="... 阅读详情

问题?有时候我们会看到那种非常炫酷,又很有动画感的页面或者图标动画或者那种透明又由动画的按钮。那应该怎么做呢?

原理:运用css3中的几个属性及jquery,css3,js

属性介绍:



                     


               

                       







举个例子:像这样的幽灵按钮。


     



像这样的按钮怎么做呢?

例子:

    例子目录

:

目录文件有那些:



index.html文件

<<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>幽灵按钮</title>
	<link rel="stylesheet" type="text/css" href="css/style.css">
	<script src="js/jquery-2.1.4.min.js"></script>
	<script src="js/javascript.js"></script>
</head>
<body>
<div class="box">
	<div class="link link-miss">
		<span class="icon"></span>
		<a href="#" class="button" data="My is miss">
			<span class="line line-top"></span>
			<span class="line line-right"></span>
			<span class="line line-bottom"></span>
			<span class="line line-left"></span>
			MISSION
		</a>
	</div>
	
	<div class="link link-play">
		<span class="icon"></span>
		<a href="#" class="button" data="My is play">
			<span class="line line-top"></span>
			<span class="line line-right"></span>
			<span class="line line-bottom"></span>
			<span class="line line-left"></span>
			PLAY
		</a>
	</div>
	 
	<div class="link link-touch">
		<span class="icon"></span>
		<a href="#" class="button" data="My is touch">
			<span class="line line-top"></span>
			<span class="line line-right"></span>
			<span class="line line-bottom"></span>
			<span class="line line-left"></span>
			TOUCH
		</a>
	</div>
	<!-- 提示信息相对全局盒子来定位的 -->
	<div class="tip"><em></em><span></span></div>
</div>
</body>
</html>
style.css样式文件

/*全局初始化*/
*{
	margin: 0;
	padding: 0;
}

body{background: #333;}

.box{
	width: 800px;
	height: 280px;
	margin: 50px auto;
	position: relative;
	/*background: #f00;*/
}
.box .link{
	width: 205px;
	height: 280px;
	float: left;
	margin: 0 20px;
}

.link .icon{
	display: inline-block;
	width: 100%;
	height: 100px;
	transition:0.5s ease-out;/*过渡属性,动画完成需要0.2秒,动画速度曲线是快到慢,如:linear是匀速*/
	/*兼容支持*/
	-moz-transition:0.5s ease-out;
	-webkit-transition:0.5s ease-out;
	-0-transition:0.5s ease-out;
}

.link-miss .icon{
	background:  url(../ico/1.png) no-repeat center center;
}

.link-play .icon{
	background:  url(../ico/2.png) no-repeat center center;
}


.link-touch .icon{
	background:  url(../ico/3.png) no-repeat center center;
}

.link  .icon:hover{
	transform:rotate(360deg) scale(1.5);/*前者是旋转360度,后者是放大1.5倍*/
	/*兼容支持*/
	-ms-transform:rotate(360deg) scale(1.5);
	-moz-transform:rotate(360deg) scale(1.5);
	-webkit-transform:rotate(360deg) scale(1.5);
	-o-transform:rotate(360deg) scale(1.5);
}
.button{
	display: block;
	width: 180px;
	height: 50px;
	position: relative;/*设置butto内元素是相对定位,这个不设置,线条效果就出不来*/
	line-height: 50px;
	text-decoration: none;
	color: #2DCB70;
	font-family: Arial;
	font-weight: bolder;
	border: 2px solid rgba(255,255,255,0.8);
	padding-left: 20px;
	margin: 0 auto;
	/*定义了该属性就会是其填充之类的属性不会加到设置的长宽中(width: 180px;)*//**/
	/*如果不适用该属性,则就需要考虑长宽的问题了*/
	box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	background: url(../ico/4.png) no-repeat 110px center;
	/*过渡属性的设置*/
	transition:0.3s ease;/*ease表示慢到快*/
	-o-transition:0.3s ease;
	-moz-transition:0.3s ease;
	-webkit-transition:0.3s ease;

}
.button:hover{/*当鼠标划过button时的动画*/

	border: 2px solid rgba(255,255,255,3);/*边框变亮*/
	background-position: 140px center;/*箭头图片移动*/

}
/*线条设置属性
*/

.button .line{
	display: block;
	position: absolute;
	background: none;
}
.button:hover .line{
	background: #fff;
}
/*top线条的设置*/
.button .line-top{
	height: 2px;
	width: 0px;/*初始是点,则没有长度,又点到线*/
	left: -110%;/*向左偏移盒子的长度*/
	top: -2px;
	transition:0.3s ease-out;
	-o-transition:0.3s ease-out;
	-webkit-transition:0.3s ease-out;
	-moz-transition:0.3s ease-out;
}

.button:hover .line-top{
	width: 100%;
	left: -2px;
}

/*right线条的设置*/
.button .line-right{
	width: 2px;
	height: 0px;
	right: -2px;
	top: -110px;
	transition:0.3s ease-out;
	-o-transition:0.3s ease-out;
	-webkit-transition:0.3s ease-out;
	-moz-transition:0.3s ease-out;
}
.button:hover .line-right{
	height: 100%;
	top: -2px;
}

/*bottom线条的设置*/
.button .line-bottom{
	height: 2px;
	width: 0;
	right: -110px;
	bottom: -2px;
	transition:0.3s ease-out;
	transition:0.3s ease-out;
	-o-transition:0.3s ease-out;
	-webkit-transition:0.3s ease-out;
	-moz-transition:0.3s ease-out;

}
.button:hover .line-bottom{
	width: 100%;
	right: -2px;
}
/*left*/
.button .line-left{
	width: 2px;
	height: 0px;
	left: -2px;
	bottom: -110%;
	transition:0.3s ease-out;
	-o-transition:0.3s ease-out;
	-webkit-transition:0.3s ease-out;
	-moz-transition:0.3s ease-out;
}

.button:hover .line-left{
	height: 100%;
	bottom: -2px;
}
/*提示信息css*/
.tip{/*提示框的原始设置*/
	position: absolute;
	padding:0 14px;
	height: 35px;
	line-height: 35px;
	background: #2DCB70;
	color: #fff;
	font-size: 18px;
	margin: 0 auto;

	border-radius: 3px;/*css3中定义圆角的属性(border-right-radius:定义右边圆角)*/
	-ms-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;

	top: 35px;
	opacity: 0;/*透明度设置*/
}
.tip em{
	font-style: normal;
}
.tip span{/*三角形设置*/
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
	border: 7px solid transparent;/*tansparent :透明*/
	border-top-color: #2DCB70;/*三角形向下*/
	position: absolute;
	top: 35px;
	left: 50%;
	margin-left: -3px;
}

javascript.js文件内容

$(function(){
	$('.link .button').hover(function(){
		// 这是鼠标进入的时候设置
		var title=$(this).attr('data');// 取出data的值	
		$('.tip em').text(title);// 将data值放入em标签中
		var pos=$(this).position().left+10;// 寻找定位,根据此处寻找。只找到box中的相对定位。再加一点儿距离
		// document.title=pos;// 得到三个按钮相对盒子左边的距离分别为20 265 510。
		var dis=($('.tip').outerWidth()-$(this).outerWidth())/2;// 提示框的宽减去按钮的宽,然后除以2就可以居中了。
		var l=pos-dis;
		$('.tip').css({'left':l+'px'}).animate({'top':55,'opacity':1},400);
		// 加上属性、'left':l+'px'这个是将最终移动的距离确定了、animate动画函数,属性的更改,400是时间
	},function(){
		// 这是鼠标离开的时候设置
		// $('.tip').animate({'top':35,'opacity':0},400);//到这里基本效果已经实现
		// 这个时候我们就会发现,当鼠标快速移开的时候就会出现动画连续播放的bug,我们离解决这个bug
		if(!$('.tip').is(':animated')){//当animate不执行的时候才会执行下面动画
			$('.tip').animate({'top':35,'opacity':0},400);
		}
	})
})

其中需要用到jquery框架,所以我们需要导jquery包,jquery包可以去官网下载,也可以用该例子,这个例子已经上传我的资源,可供下载。



HTML+CSS3前端开发幽灵按钮 幽灵按钮,也就是Ghost Buttons,是一个透明的按钮,通常是矩形或者圆角矩形,仅保留基本的形制,使用细线来标识边界;按钮内的文字通常使用纤细的非衬线体字体的纯文本,来指明按钮功能。 举个例子,09年的星际迷航里企业号控制端的UI就大多采用的是幽灵按钮。其通透简约,贴合整体风格别具魅力。 那么,首先呢给大家瞅瞅我自己做的一个幽灵按钮(界面有点丑,希望大家见谅啊): 好了,不废话 阅读详情

相关推荐

探索CSS3幽灵按钮:动画与交互设计实践

在本章节中,我们详细介绍了如何使用CSS3中的属性实现圆角边框,并通过代码示例和实际案例来展示它在界面设计中的应用。从基本语法到进阶设计技巧,我们深入探讨了圆角边框的各种可能性。理解并掌握圆角边框的使用,可以帮助设计师和前端开发者更好地创造出既美观又实用的用户界面。

weixin_42311427的博客 872

使用CSS3制作幽灵按钮

使用CSS3制作幽灵按钮 1、什么是幽灵按钮 透明按钮,顾名思义,就是在设计网页按钮时,不再设计复杂色彩、样式和纹理, 而是外仅以线框示意轮廓,内只用文字示意功能,背景透出,与整个页面/背景合而为一的设计方式。 国外的设计师称之为“幽灵按钮”(Ghost Buttons),盛赞这种按钮通透简约, 贴合整体风格又不失神韵,别具魅力。这种按钮的设计早已有之,但是...

小公举的踩坑日记 1928

css-ghost-buttons:一组灵感来自真实世界示例的幽灵按钮

CSS 幽灵按钮 一组灵感来自现实世界示例的幽灵按钮。 源代码是免费和开源的。 演示 查看以查看操作中的幽灵按钮。 该演示展示了受现实世界示例启发的八个幽灵按钮变体。 如何使用 下载 ,然后将适当的样式规则复制并粘贴到项目的 CSS 中。 根据需要进行修改以获得您想要的外观和过渡效果。 关于 这是的演示页面。 这是由 Jacob Gube 创建的。 源文件是发布到公共领域的免费且不受阻碍的软件; 阅读文件以获取更多详细信息。

CSS-幽灵按钮

  这里为了体现效果,添加了一张图片作为背景。具体效果可以根据个人需求调试。 HTML <div class="backimg"> <img src="img/hero.jpg" /> </div> <div class="btnBox"> <div class="btn"> <div class="btn-bord...

zhou 622

css3幽灵按钮样本

我们常常会用css3的相关属性来做那些非常炫酷的按钮或者动画。这个例子就是一个css3的按钮动画效果。

html中特效按钮(幽灵按钮)制作.zip

含代码和演示视频,利用按钮组实现三个特效按钮。涉及绝对定位和相对定位,选择器的使用,基本动画。上手简单,比较容易看懂,涉及的主要是利用CSS来实现如何制作特效按钮,比较简洁,仅供参考。

CSS3案例学习---幽灵按钮

<!DOCTYPE htm;> <html> <head> <style> body{ background-color:red; } .content{ background-color:blue; width

笑释一切的博客 680

纯CSS3幽灵上下浮动动画特效.zip

纯CSS3幽灵上下浮动动画特效是一款蓝色背景风格的CSS3卡通幽灵动画特效代码。

CSS3下实现幽灵按钮

CSS3下实现幽灵按钮

Simagle的专栏 1753

幽灵按钮 源代码HTML5开发实战

幽灵按钮 源代码HTML5开发实战 幽灵按钮,代码实现。HTML5实现。

基于JavaFX的Http Server模拟器

源码地址 GitHub - DayRain/http-server-simulator: http server 模拟器 功能描述 HttpServer模拟器,通过简单的配置即可模拟第三方服务端,用于接收和响应HTTP请求。 支持同时模拟多个服务、动态添加接口、动态配置返回值。 使用说明 运行 exe运行 编译代码后,点击exe直接运行 代码运行 下载好代码后,运行主类ApplicationStarter即可 新建服务 主界面如下 点击 文件-新建 创建新的服务 ...

小楼夜听雨的博客 2535

幽灵按钮css3

暑假第14天,学习了幽灵按钮。 幽灵按钮,也就是Ghost Buttons,是一个透明的按钮,通常是矩形或者圆角矩形,仅保留基本的形制,使用细线来标识边界;按钮内的文字通常使用纤细的非衬线体字体的纯文本,来指明按钮功能。 幽灵按钮有时候也被称为“空按钮”,通常会被设计得比普通的按钮更大一些。而它们之所以被命名为“幽灵”,是应为这种按钮如同鬼魂一样透明,但是独特的造型会立刻吸引用户的注意

Christine95的博客 2803

华为硬件逻辑岗笔试题(一)

积少成多,集腋成裘,坚持!!! 目录 1. 进制转换 2. 状态机和编码方式 3. 存储器的分类 4. Verilog语法中的操作符 5. 对组合逻辑的认识 6. 对时序逻辑的认识 7. 竞争冒险的认识 8. 基本时序逻辑电路 9. 建立时间和保持时间 10. 同步时序电路 11. 组合逻辑和时序逻辑判断 13. 基本总线的理解 14.加法器 15.FPGA开发工具 1. 进制转换 1、十进制46.25对应的二进制表达式为( )。 A 101110.11...

qq_42235129的博客 1万+

幽灵按钮html透明度,CSS3之传说中的幽灵按钮详解

大家好,自CSS3诞生之日起,网页特效较之以往变得越来越简单,样式也越来越多,那么今天我们来分享下所谓幽灵按钮的实现方法,首先我们来看下效果:幽灵按钮1.结构分析基本结构图解由上图不难看出,该示例主要由三部分组成,每部分各包含一个图标(由背景图像生成)和一个按钮(由带边框的超链接生成),按钮中有一个右指向的箭头(也由背景图像生成),除此之外,在效果图中,当鼠标滑过按钮时有四条线从四个方向飞入与按钮...

weixin_39611506的博客 318

最新,弱小目标检测数据集,持续更新中。

梳理了最新的下弱小目标检测数据库,方便后续开发使用

weixin_43331421的博客 4099

CATIA CAA 二次开发去除面内开孔

测试模型: 代码说明:以下代码在拓扑级去除Face的内部loop,更改后的Body通过oispBody参数输出。主要使用CATSmartBodyDuplicator拓扑操作实现 HRESULT CAAStarterCmd::RemoveHoleOnFace(CATBody_var &ispBody,CATBody_var &oispBody){ CATLISTP(CATCell)olistFace; ispBody->GetAllCells(olistFace,2); CATF

weixin_45445751的博客 2265

CSS3实现幽灵按钮(下)

CSS3实现幽灵按钮实现边框的特效

Simagle的专栏 804

小红书图文笔记图像批量爬取:Python爬虫实战与反反爬策略全解析

在当今社交媒体盛行的时代,小红书作为中国领先的生活方式分享平台,积累了海量的优质图文内容。对于数据分析师、市场研究人员或内容创作者来说,能够高效获取这些数据具有重要意义。本文将详细介绍如何使用Python构建一个高效、稳定的小红书图文笔记图像批量爬取工具,涵盖最新技术栈和反反爬策略。本文详细介绍了如何使用Python构建一个高效、稳定的小红书图文笔记图像批量爬取系统。通过结合Playwright、aiohttp等现代工具,实现了从列表页采集到图片下载的完整流程。

2201_76125261的博客 2364

CSS实现具有方面感知的幽灵按钮

本文中,我们将构建一个幽灵按钮,实现按钮很简单,但有趣而棘手的部分是使按钮背景色从鼠标进入的方向开始填充。 我们可以先看看最终实现的效果: 接下来,我们把实现步骤分解开来。 基础 我们先创建一个按钮,很简单! <button>Boo!</button> 我们使用 CSS 自定义属性完成样式,这样更易于维护。 web前端开发学习Q-q-u-n: 731771211,分享...

在线学习web前端开发教程 462

硬件工程师笔试面试高频考点汇总——(2025版)

《硬件工程师笔试面试知识汇总》一文系统梳理了硬件领域的核心知识体系,涵盖电子器件、模拟电路、数字电路等模块。文章详细解析了电阻、电容、电感等基础元件的选型与应用,深入探讨了三极管、MOS管等半导体器件的工作原理,并对比分析了DCDC与LDO等电源方案。在电路设计方面,提供了滤波器、放大器等实用电路的设计方法与仿真案例,同时包含UART、I2C等通信协议的实现要点。文章还整合了戴维宁定理等电路分析理论,并附有美团、联想等名企真题解析。通过器件特性、电路设计、企业真题三维度内容,为硬件工程师构建了完整的知识框架

XU157303764的博客 1万+

Agent Harness Engineering: AI Agent 执行管控与安全沙箱 原理与最佳实践

我们正站在计算范式转移的历史节点上。2024-2026 年间,AI 系统从被动的内容生成器(Generative AI)演变为主动的行动执行者(Agentic AI)。这一转变的根本特征是:根据 2026 年初的行业数据:然而,能力的提升伴随着风险的指数级增长。2024-2026 年间发生的多起标志性安全事件揭示了 Agent 系统的脆弱性:案例 1:Slack AI 数据外泄事件(2024 年 8 月)案例 2:制造业供应链攻击(2026 年 Q3)案例 3:Arup 深度诈骗案(2026 年 9 月)这

AI天才研究院 1669

css实现幽灵按钮

css使用过渡,使用幽灵按钮。

richest_qi的博客 337

Multisim14.0仿真(五十九)基于74LS161的24进制计数器应用设计

它具有同步预置、异步清零功能,支持并行数据加载,并可在计数使能控制下进行二进制计数。:低电平时,在下一个时钟上升沿加载输入数据(A, B, C, D)。(多个 74LS161D 串联构成 8 位、12 位等更长计数器)。低电平时,下一个时钟上升沿加载输入数据(A, B, C, D)。:低电平有效,立即清零计数器(不受时钟控制)。均为高电平时,每个时钟上升沿计数。:两者均为高电平时,计数器才能递增。:立即清零计数器(不受时钟控制)。(通过预置初始值控制计数范围)。(计数范围:0 ~ 15,即。

corlin6688的博客 4764

幽灵按钮的实现

幽灵按钮是2014年开始出现的,在当时可是一种”新趋势“。目前大量应用于国外网站,国内相对少一些,但效果是令人十分舒服。 现在或许有点过时了,但是对于我这种新手,用它来练练手还是不错的。 那么先温故一下,什么是幽灵按钮 幽灵按钮,也就是Ghost Buttons,是一个透明的按钮,通常是矩形或者圆角矩形,仅保留基本的形制,使用细线来标识边界;按钮内的文字通常使用纤细的非衬线体字...

503

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: Session的用法(代码解析)
下一篇: 编程语言汉英翻译
黯雅悸动
博客等级 码龄12年 144粉丝 258原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值