css3 3D下拉菜单特效代码

版权:原创 更新时间:1年以上
[该文章底部包含文件资源,可根据自己情况,决定是否下载资源使用,时间>金钱,如有需要,立即查看资源]

以下是 css3 3D下拉菜单特效代码 的示例演示效果:

当前平台(PC电脑)
  • 平台:

部分效果截图:

css3 3D下拉菜单特效代码

HTML代码(index.html):

<!DOCTYPE HTML>
<html lang="en-US">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<title>css3 3D下拉菜单</title>
	<script type="text/javascript" charset="UTF-8" src="js/prefixfree.min.js"></script>
	<link rel="stylesheet" type="text/css" href="css/base.css" media="all" />
<style type="text/css">
	@font-face {
    font-family: 'sansationregular';
    src: url('font/sansation_regular-webfont.eot');
    src: url('font/sansation_regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/sansation_regular-webfont.woff') format('woff'),
         url('font/sansation_regular-webfont.ttf') format('truetype'),
         url('font/sansation_regular-webfont.svg#sansationregular') format('svg');
    font-weight: normal;
    font-style: normal;

}
	body {
	background-color:#edecec;
}

		/* basic menu styles */
		.nav-menu {
			display: block;
			background: #74adaa;
			width:950px;
			margin: 50px auto 150px;
		}

		.nav-menu > li {
			display: inline;
			float:left;			
			border-right:1px solid #94c0be;
		}
		.nav-menu > li:last-child {
			border-right: none;
		}
		.nav-menu li a {
			color: #fff;
			display: block;
			text-decoration: none;
			font-family: 'sansationregular';
			-webkit-font-smoothing: antialiased;
			-moz-font-smoothing: antialiased;
			font-smoothing: antialiased;
			text-transform: capitalize;
			overflow: visible;
			line-height: 20px;
			font-size: 20px;
			padding: 15px 30px 15px 31px;			
		}

		/* animation domination */
		.three-d {
			perspective: 200px;
			transition: all .07s linear;
			position: relative;
		}

			.three-d:not(.active):hover {
				cursor: pointer;
			}

			.three-d:not(.active):hover .three-d-box, 
			.three-d:not(.active):focus .three-d-box {
				transform: translateZ(-25px) rotateX(90deg);
			}

		.three-d-box {
			transition: all .3s ease-out;
			transform: translatez(-25px);
			transform-style: preserve-3d;
			pointer-events: none;
			position: absolute;
			top: 0;
			left: 0;
			display: block;
			width: 100%;
			height: 100%;
		}

		.front {
			transform: rotatex(0deg) translatez(25px);
		}

		.back {
			transform: rotatex(-90deg) translatez(25px);
			color: #FFE7C4;
		}

		.front, .back {
			display: block;
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			background: #74adaa;
			padding: 15px 30px 15px 31px;	
			color: white;
			pointer-events: none;
			box-sizing: border-box;

		}
		.nav-menu li .active .front,
		.nav-menu li .active .back,
		.nav-menu li a:hover .front,
		.nav-menu li a:hover .back {
				background-color: #51938f;
    background-size: 5px 5px;
    background-position: 0 0, 30px 30px;
    background-image: -*-linear-gradient(45deg, #478480 25%, transparent 25%, transparent 75%, #478480 75%, #478480), linear-gradient(45deg, #478480 25%, transparent 25%, transparent 75%, #478480 75%, #478480);
	
		}
		.nav-menu ul {
			position: absolute;
			text-align: left;
			line-height: 40px;
			font-size: 14px;
			width: 200px;
			transition: all 0.3s ease-in;
			transform-origin: 0px 0px;
			transform: rotateX(-90deg);
			backface-visibility: hidden;
		}
		.nav-menu > li:hover ul {
			 display: block;
			transform: rotateX(0deg);
		}
	</style>	
</head>
<body>
<div class="page">

	<section class="demo">
		<div id="nav">
			<ul class="nav-menu clearfix unstyled">
				<li><a href="#" class="three-d active">
					Home
					<span class="three-d-box"><span class="front">Home</span><span class="back">Home</span></span>
				</a></li>
				<li><a href="#" class="three-d">
					Services
					<span class="three-d-box"><span class="front">Services</span><span class="back">Services</span></span>
				</a></li>
				<li><a href="#" class="three-d">
					Products
					<span class="three-d-box"><span class="front">Products</span><span class="back">Products</span></span>
				</a></li>
				<li><a href="#" class="three-d">
					About
					<span class="three-d-box"><span class="front">About</span><span class="back">About</span></span>
				</a></li>
				<li><a href="#" class="three-d">
					Contact
					<span class="three-d-box"><span class="front">Contact</span><span class="back">Contact</span></span>
				</a></li>
				<li><a href="#" class="three-d">
					Blog
					<span class="three-d-box"><span class="front">Blog</span><span class="back">Blog</span></span>
				</a>
					<ul class="clearfix unstyled drop-menu">
						<li><a href="#" class="three-d">
								Html5
								<span class="three-d-box"><span class="front">Html5</span><span class="back">Html5</span></span>
							</a></li>
							<li><a href="#" class="three-d">
								Css3
								<span class="three-d-box"><span class="front">Css3</span><span class="back">Css3</span></span>
							</a></li>
							<li><a href="#" class="three-d">
								JavaScript
								<span class="three-d-box"><span class="front">JavaScript</span><span class="back">JavaScript</span></span>
							</a></li>
							<li><a href="#" class="three-d">
								Videogames
								<span class="three-d-box"><span class="front">Videogames</span><span class="back">Videogames</span></span>
							</a></li>
					</ul>
				</li>
				<li><a href="#" class="three-d">
					Shop On-line
					<span class="three-d-box"><span class="front">Shop On-line</span><span class="back">Shop On-line</span></span>
				</a></li>
			</ul>
		</div>
	</section>
</div>
</body>
</html>







JS代码(prefixfree.min.js):

/** * StyleFix 1.0.3 & PrefixFree 1.0.7 * @author Lea Verou * MIT license */
(function(){
	function t(e,t){
	return[].slice.call((t||document).querySelectorAll(e))}
if(!window.addEventListener)return;
	var e=window.StyleFix={
	link:function(t){
	try{
	if(t.rel!=="stylesheet"||t.hasAttribute("data-noprefix"))return}
catch(n){
	return}
var r=t.href||t.getAttribute("data-href"),i=r.replace(/[^\/]+$/,""),s=t.parentNode,o=new XMLHttpRequest,u;
	o.onreadystatechange=function(){
	o.readyState===4&&u()}
;
	u=function(){
	var n=o.responseText;
	if(n&&t.parentNode&&(!o.status||o.status<400||o.status>600)){
	n=e.fix(n,!0,t);
	if(i){
	n=n.replace(/url\(\s*?((?:"|')?)(.+?)\1\s*?\)/gi,function(e,t,n){
	return/^([a-z]{
	3,10}
:|\/|#)/i.test(n)?e:'url("'+i+n+'")'}
);
	var r=i.replace(/([\\\^\$*+[\]?{
}
.=!:(|)])/g,"\\$1");
	n=n.replace(RegExp("\\b(behavior:\\s*?url\\('?\"?)"+r,"gi"),"$1")}
var u=document.createElement("style");
	u.textContent=n;
	u.media=t.media;
	u.disabled=t.disabled;
	u.setAttribute("data-href",t.getAttribute("href"));
	s.insertBefore(u,t);
	s.removeChild(t);
	u.media=t.media}
}
;
	try{
	o.open("GET",r);
	o.send(null)}
catch(n){
	if(typeof XDomainRequest!="undefined"){
	o=new XDomainRequest;
	o.onerror=o.onprogress=function(){
}
;
	o.onload=u;
	o.open("GET",r);
	o.send(null)}
}
t.setAttribute("data-inprogress","")}
,styleElement:function(t){
	if(t.hasAttribute("data-noprefix"))return;
	var n=t.disabled;
	t.textContent=e.fix(t.textContent,!0,t);
	t.disabled=n}
,styleAttribute:function(t){
	var n=t.getAttribute("style");
	n=e.fix(n,!1,t);
	t.setAttribute("style",n)}
,process:function(){
	t('link[rel="stylesheet"]:not([data-inprogress])').forEach(StyleFix.link);
	t("style").forEach(StyleFix.styleElement);
	t("[style]").forEach(StyleFix.styleAttribute)}
,register:function(t,n){
	(e.fixers=e.fixers||[]).splice(n===undefined?e.fixers.length:n,0,t)}
,fix:function(t,n,r){
	for(var i=0;
	i<e.fixers.length;
	i++)t=e.fixers[i](t,n,r)||t;
	return t}
,camelCase:function(e){
	return e.replace(/-([a-z])/g,function(e,t){
	return t.toUpperCase()}
).replace("-","")}
,deCamelCase:function(e){
	return e.replace(/[A-Z]/g,function(e){
	return"-"+e.toLowerCase()}
)}
}
;
	(function(){
	setTimeout(function(){
	t('link[rel="stylesheet"]').forEach(StyleFix.link)}
,10);
	document.addEventListener("DOMContentLoaded",StyleFix.process,!1)}
)()}
)();
	(function(e){
	function t(e,t,r,i,s){
	e=n[e];
	if(e.length){
	var o=RegExp(t+"("+e.join("|")+")"+r,"gi");
	s=s.replace(o,i)}
return s}
if(!window.StyleFix||!window.getComputedStyle)return;
	var n=window.PrefixFree={
	prefixCSS:function(e,r,i){
	var s=n.prefix;
	n.functions.indexOf("linear-gradient")>-1&&(e=e.replace(/(\s|:|,)(repeating-)?linear-gradient\(\s*(-?\d*\.?\d*)deg/ig,function(e,t,n,r){
	return t+(n||"")+"linear-gradient("+(90-r)+"deg"}
));
	e=t("functions","(\\s|:|,)","\\s*\\(","$1"+s+"$2(",e);
	e=t("keywords","(\\s|:)","(\\s|;
	|\\}
|$)","$1"+s+"$2$3",e);
	e=t("properties","(^|\\{
	|\\s|;
	)","\\s*:","$1"+s+"$2:",e);
	if(n.properties.length){
	var o=RegExp("\\b("+n.properties.join("|")+")(?!:)","gi");
	e=t("valueProperties","\\b",":(.+?);
	",function(e){
	return e.replace(o,s+"$1")}
,e)}
if(r){
	e=t("selectors","","\\b",n.prefixSelector,e);
	e=t("atrules","@","\\b","@"+s+"$1",e)}
e=e.replace(RegExp("-"+s,"g"),"-");
	e=e.replace(/-\*-(?=[a-z]+)/gi,n.prefix);
	return e}
,property:function(e){
	return(n.properties.indexOf(e)?n.prefix:"")+e}
,value:function(e,r){
	e=t("functions","(^|\\s|,)","\\s*\\(","$1"+n.prefix+"$2(",e);
	e=t("keywords","(^|\\s)","(\\s|$)","$1"+n.prefix+"$2$3",e);
	return e}
,prefixSelector:function(e){
	return e.replace(/^:{
	1,2}
/,function(e){
	return e+n.prefix}
)}
,prefixProperty:function(e,t){
	var r=n.prefix+e;
	return t?StyleFix.camelCase(r):r}
}
;
	(function(){
	var e={
}
,t=[],r={
}
,i=getComputedStyle(document.documentElement,null),s=document.createElement("div").style,o=function(n){
	if(n.charAt(0)==="-"){
	t.push(n);
	var r=n.split("-"),i=r[1];
	e[i]=++e[i]||1;
	while(r.length>3){
	r.pop();
	var s=r.join("-");
	u(s)&&t.indexOf(s)===-1&&t.push(s)}
}
}
,u=function(e){
	return StyleFix.camelCase(e)in s}
;
	if(i.length>0)for(var a=0;
	a<i.length;
	a++)o(i[a]);
	else for(var f in i)o(StyleFix.deCamelCase(f));
	var l={
	uses:0}
;
	for(var c in e){
	var h=e[c];
	l.uses<h&&(l={
	prefix:c,uses:h}
)}
n.prefix="-"+l.prefix+"-";
	n.Prefix=StyleFix.camelCase(n.prefix);
	n.properties=[];
	for(var a=0;
	a<t.length;
	a++){
	var f=t[a];
	if(f.indexOf(n.prefix)===0){
	var p=f.slice(n.prefix.length);
	u(p)||n.properties.push(p)}
}
n.Prefix=="Ms"&&!("transform"in s)&&!("MsTransform"in s)&&"msTransform"in s&&n.properties.push("transform","transform-origin");
	n.properties.sort()}
)();
	(function(){
	function i(e,t){
	r[t]="";
	r[t]=e;
	return!!r[t]}
var e={
	"linear-gradient":{
	property:"backgroundImage",params:"red,teal"}
,calc:{
	property:"width",params:"1px + 5%"}
,element:{
	property:"backgroundImage",params:"#foo"}
,"cross-fade":{
	property:"backgroundImage",params:"url(a.png),url(b.png),50%"}
}
;
	e["repeating-linear-gradient"]=e["repeating-radial-gradient"]=e["radial-gradient"]=e["linear-gradient"];
	var t={
	initial:"color","zoom-in":"cursor","zoom-out":"cursor",box:"display",flexbox:"display","inline-flexbox":"display",flex:"display","inline-flex":"display"}
;
	n.functions=[];
	n.keywords=[];
	var r=document.createElement("div").style;
	for(var s in e){
	var o=e[s],u=o.property,a=s+"("+o.params+")";
	!i(a,u)&&i(n.prefix+a,u)&&n.functions.push(s)}
for(var f in t){
	var u=t[f];
	!i(f,u)&&i(n.prefix+f,u)&&n.keywords.push(f)}
}
)();
	(function(){
	function s(e){
	i.textContent=e+"{
}
";
	return!!i.sheet.cssRules.length}
var t={
	":read-only":null,":read-write":null,":any-link":null,"::selection":null}
,r={
	keyframes:"name",viewport:null,document:'regexp(".")'}
;
	n.selectors=[];
	n.atrules=[];
	var i=e.appendChild(document.createElement("style"));
	for(var o in t){
	var u=o+(t[o]?"("+t[o]+")":"");
	!s(u)&&s(n.prefixSelector(u))&&n.selectors.push(o)}
for(var a in r){
	var u=a+" "+(r[a]||"");
	!s("@"+u)&&s("@"+n.prefix+u)&&n.atrules.push(a)}
e.removeChild(i)}
)();
	n.valueProperties=["transition","transition-property"];
	e.className+=" "+n.prefix;
	StyleFix.register(n.prefixCSS)}
)(document.documentElement);
	

CSS代码(base.css):

@charset "utf-8";@import url("http://www.w3cplus.com/download/reset.css");/* ------------------------------------------------- * common * -------------------------------------------------*/
.page{text-align:left;padding-top:40px;}
.wrap_top_nav{background-color:#333;box-shadow:0 1px 3px rgba(0,0,0,0.25),0 -1px 0 rgba(0,0,0,0.1) inset;height:40px;}
#top_nav{width:1000px;margin:0 auto;position:relative;}
#top_nav a{font-size:16px;line-height:40px;float:left;margin-right:20px;color:#999;text-decoration:none;}
#top_nav a:hover{color:#fff;}
#top_nav li:nth-child(1) a{background-image:url(http://www.w3cplus.com/sites/all/themes/marvin/logo.png);background-position:0 -12px;background-repeat:no-repeat;background-size:68px 60px;padding-left:74px;color:#fff;width:74px;overflow:hidden;}
#read{position:absolute;right:0;top:0;font-family:'����';}
#header{text-align:center;}
#header .white{color:#fff;}
#header .blank{color:#444;}
#header h1{font-size:24px;}
#header h2{font-weight:normal;}
#ad_w3cplus{width:750px;margin:100px auto;text-align:center;}
#ad_w3cplus .grid-ad{float:left;}
附件:下载该文件资源,减少时间成本(增值服务)
留言
该资源可下载
File Source
.rar
63.41 KB
Html Js 菜单导航特效1
最新结算
股权转让协议意向书模板
类型: .docx 金额: CNY 2.23¥ 状态: 待结算 详细>
股权转让协议意向书模板
类型: .docx 金额: CNY 0.28¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 0.29¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 2.31¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 2.39¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 0.3¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
我们力求给您提供有用的文章,再此基础上,会附加营收资源,不做任何广告,让平台可以更好发展 若您发现您的权利被侵害,或使用了您的版权,请发邮件联系 sunlifel@foxmail.com ggbig觉得 : 不提供源码的文章不是好文章
合作伙伴
联系我们
  • QQ:21499807
  • 邮箱:sunlifel@foxmail.com
  • QQ扫一扫加QQ
    QQ扫一扫
Copyright 2023-2024 ggbig.com·皖ICP备2023004211号-1
打赏文章