工作之余写的一个类似于QQzone的菜单效果

先上截图:

图一为点击按钮前界面:

图二为点击按钮后的界面

下面上代码:

<!--css部分-->
<style type="text/css">
@font-face
{
font-family:'Raphaelicons';
src:url(font/raphaelicons-webfont.svg) format('svg'),url(font/raphaelicons-webfont.woff) format('woff');
font-weight:normal;
}
*
{margin:;
padding:;
border:;
list-style:none;
}
html, body, #container
{
width:%;
height:%;
overflow:hidden;
}
#container
{
background:#;
overflow-y:auto;
} [data-icon]:after
{
font-family:Raphaelicons;
content:attr(data-icon);
width:50px;
height:50px;
} .st-icon, .nav
{
position:absolute;
width:50px;
height:50px;
bottom:;
left:%;
margin-left:-25px; }
.st-icon
{
text-align:center;
font-size:50px;
line-height:50px;
-webkit-border-radius:%;
border-radius:%;
background-color:#F90;
color:white;
-webkit-transition:all 1s ease-in-out;
transition:all .7s ease-in-out;
z-index:;
}
.nav
{
z-index:;
opacity: ;
filter: 'alpha(opacity=50)';
cursor:pointer;
}
.nav:checked + .st-icon
{
-webkit-transform:rotateZ(135deg);
transform:rotateZ(135deg);
}
.cover
{ background:rgba(,,,.);
position:absolute;
width:%;
height:%;
bottom:-%;
left:;
-webkit-transition:all .5s ease-in-out;
transition:all .6s ease-in-out;
}
.nav:checked ~ .cover
{
bottom:;
} .ope-group
{
position:absolute;
bottom:100px;
left:;
right:;
padding-left:20px; }
.ope-group li
{
float:left;
margin-right:20px;
text-align:center;
margin-bottom:10px;
}
.ope-name
{
font-size:7px;
} .nav:checked ~ .cover li#opeItem1
{
-webkit-animation:moveUp .3s ease-in-out .1s backwards;
animation:moveUp .3s ease-in-out .1s backwards;
}
.nav ~ .cover li#opeItem1, .nav ~ .cover li#opeItem2, .nav ~ .cover li#opeItem3, .nav ~ .cover li#opeItem4
{
-webkit-animation:moveDown .2s ease-out .2s backwards;
animation:moveDown .2s ease-out .2s backwards;
}
.nav ~ .cover li#opeItem5, .nav ~ .cover li#opeItem6
{ -webkit-animation:moveDown .2s ease-out .1s backwards;
animation:moveDown .2s ease-out .1s backwards;
}
.nav:checked ~ .cover li#opeItem2
{
-webkit-animation:moveUp .3s ease-in-out .2s backwards;
animation:moveUp .3s ease-in-out .2s backwards;
}
.nav:checked ~ .cover li#opeItem3
{
-webkit-animation:moveUp .3s ease-in-out .3s backwards;
animation:moveUp .3s ease-in-out .3s backwards;
}
.nav:checked ~ .cover li#opeItem4
{
-webkit-animation:moveUp .3s ease-in-out .4s backwards;
animation:moveUp .3s ease-in-out .4s backwards;
}
.nav:checked ~ .cover li#opeItem5
{
-webkit-animation:moveUp .3s ease-in-out .5s backwards;
animation:moveUp .3s ease-in-out .5s backwards;
}
.nav:checked ~ .cover li#opeItem6
{
-webkit-animation:moveUp .3s ease-in-out .5s backwards;
animation:moveUp .3s ease-in-out .5s backwards;
}
@-webkit-keyframes moveUp
{
%
{
-webkit-transform:translateY(200px);
-moz-opacity: ;
opacity: ;
}
%
{
-webkit-transform:translateY(0px);
-moz-opacity: ;
opacity: ;
}
}
@keyframes moveUp
{
%
{
transform:translateY(-200px);
-moz-opacity: ;
opacity: ;
}
%
{
transform:translateY(0px);
-moz-opacity: ;
opacity: ;
}
}
@-webkit-keyframes moveDown
{
%
{
-webkit-transform:translateY(200px);
-moz-opacity: ;
opacity: ;
}
%
{
-webkit-transform:translateY(0px);
-moz-opacity: ;
opacity: ;
}
}
@keyframes moveDown
{
%
{
transform:translateY(-200px);
-moz-opacity: ;
opacity: ;
}
%
{
transform:translateY(0px);
-moz-opacity: ;
opacity: ;
}
} .st-list
{
width:300px;
background:#FFF;
margin-left:auto;
margin-right:auto;
margin-bottom:20px;
padding:5px; }
.st-list .st-avatar
{
-webkit-border-radius:%;
float:left;
padding:5px;
box-shadow:2px 2px 10px;
width:50px;
}
.st-list .st-detail
{
margin-left:100px;
} .st-list
{
box-shadow:1px 1px 1px;
} </style>
<!--html部分-->
<body onmousewheel="return false;">
<div id="container">
<div class="st-list">
<img class="st-avatar" src="http://pic.cnblogs.com/avatar/595478/20140712113054.png"/>
<div class="st-detail">
<h3>工作标题</h3>
<p class="st-content">今天的工作内容今天的工作内容今天的工作内容今天的工作内容</p>
</div>
</div>
<div class="st-list">
<img class="st-avatar" src="http://pic.cnblogs.com/avatar/595478/20140712113054.png"/>
<div class="st-detail">
<h3>工作标题</h3>
<p class="st-content">今天的工作内容今天的工作内容今天的工作内容今天的工作内容</p>
</div>
</div>
<div class="st-list">
<img class="st-avatar" src="http://pic.cnblogs.com/avatar/595478/20140712113054.png"/>
<div class="st-detail">
<h3>工作标题</h3>
<p class="st-content">今天的工作内容今天的工作内容今天的工作内容今天的工作内容</p>
</div>
</div>
<div class="st-list">
<img class="st-avatar" src="http://pic.cnblogs.com/avatar/595478/20140712113054.png"/>
<div class="st-detail">
<h3>工作标题</h3>
<p class="st-content">今天的工作内容今天的工作内容今天的工作内容今天的工作内容</p>
</div>
</div> <input class="nav" type="checkbox"/>
<div class="st-icon" data-icon=""></div>
<div class="cover">
<ul class="ope-group">
<li id="opeItem1"><img src="data:images/参数管理.png" /><br/><span class="ope-name">参数管理</span></li>
<li id="opeItem2"><img src="data:images/订单申请.png" /><br/><span class="ope-name">订单申请</span></li>
<li id="opeItem3"><img src="data:images/订单审核.png" /><br/><span class="ope-name">订单审核</span></li>
<li id="opeItem4"><img src="data:images/经销商库存查询.png" /><br/><span class="ope-name">库存查询</span></li>
<li id="opeItem5"><img src="data:images/收货入库.png" /><br/><span class="ope-name">收货入库</span></li>
<li id="opeItem6"><img src="data:images/角色权限管理.png" /><br/><span class="ope-name">权限管理</span></li>
</ul>
</div>
</div>
</body>

ps:由于本人并非美工出生,所以界面效果也只是简单的实现了一下效果,上面基本上是所有的代码,并未用到任何js代码,既然是css3低版本的浏览器肯定就down了。。 项目在github上面 https://github.com/wdxlwx/qqzonemenu

css3实现手机qq空间菜单按钮的更多相关文章

  1. 再造 “手机QQ” 侧滑菜单(三)——视图联动

    代码示例:https://github.com/johnlui/SwiftSideslipLikeQQ 本 文中,我们将一起使用 UINavigationController 来管理主视图,并实现点击 ...

  2. 手机QQ空间自动点赞登录

    学以致用~使用 Appium 模拟人类操控手机行为 V2.0在手机上运行,目前实现以下功能: 1.小黑屋模式,一分钟内给好友发100条消息然后进了好友的小黑屋 2.定时发消息提醒对象多喝热水~ 3.对 ...

  3. 再造 “手机QQ” 侧滑菜单(一)——实现侧滑效果

    本系列文章中,我们将尝试再造手机QQ的侧滑菜单,力争最大限度接近手Q的实际效果,并使用 Auto Layout 仿造左侧菜单,实现和主视图的联动. 代码示例:https://github.com/jo ...

  4. 【CSS3】精美横向滚动菜单按钮

    废话不多说,直接上图: 然后是代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...

  5. 实现“手机qq”侧滑菜单 -- 吴欧

    基本数据采集 经过体验,手机QQ采用的应该是线性动画,即视图缩放比例等随手指在屏幕上滑动的距离以一次方程的形式变化. 提取基本数据,向右侧滑达到最大幅度时: 1.   右侧主视图左边界距离屏幕左边界的 ...

  6. 08. Web大前端时代之:HTML5+CSS3入门系列 ~ QQ空间时间轴

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 大前端系列,主要就是使用CSS3.0来实现,注释我已经打 ...

  7. 再造 “手机QQ” 侧滑菜单(二)——高仿左视图

    代码示例:https://github.com/johnlui/SwiftSideslipLikeQQ 本篇文章中,我们将一起使用 Auto Layout 高仿手Q的左侧视图,力争达成从布局到动画的全 ...

  8. 模仿手机qq空间头部向上滚动颜色加深

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 技术揭秘“QQ空间”自动转发不良信息

    大家经常会看到QQ空间自动转发一些附带链接的不良信息,即便我们的QQ密码并没有被盗取.最近通过对一个QQ空间自动转发链接进行分析,发现该自动转发机制通过利用腾讯网站存在漏洞的页面,精心构造出利用代码获 ...

随机推荐

  1. Destoon标签使用技巧十则

    Destoon标签 1.全局标签 网站名称:{$DT[sitename]}网站地址:{DT_PATH}网站LOGO: {if $MODULE[$moduleid][logo]}{DT_SKIN}ima ...

  2. HEX转BIN源码分析(51系列)

    以前写的一个Atmel的S5X的下载程序,其中有支持HEX格式的文件,所以将这个程序贴出来,程序的意思是将输入的HEX文件转换为BIN格式的文件,并存储到文件中,注意不支持64K的扩展模式. int ...

  3. DEVExpress For WPF 中GridControl如何实现滚动分页(延迟查询)

    在显示大量数据时一般采用分页显示,但是最近用户需要滚动显示,那么问题来了,滚动显示要求将数据全部查询回来,这显然会导致显示速度很慢. 好在想到一种方式,就是当用户滚动鼓动条的时候再查询下面的数据.好吧 ...

  4. 安卓开发中ScrollView不能用RelativeLayout的解决方案

    RelativeLayout的意义: 布局各个部件的相对布局.使得界面空间合理利用. 一.ScrollView局限: 滑动的只能是linearlayout,甚至整个布局都不能有RelativeLayo ...

  5. AQS详解

    一.概述 谈到并发,不得不谈ReentrantLock:而谈到ReentrantLock,不得不谈AbstractQueuedSynchronized(AQS)! 类如其名,抽象的队列式的同步器,AQ ...

  6. 【转】android cts failed items

    原文网址:http://blog.csdn.net/linsa0517/article/details/19031479 Fail的一些修改   1.直接设置问题 estUnknownSourcesO ...

  7. 通过java类文件识别JDK编译版本

    类文件中第5,6,7,8四个字节是jDK版本号信息,其中5,6为小版本号:7,8为大版本号. 大版本号对应JDK版本如下: JDK版本号 7,8字节 JDK8 52(0x34) JDK7 51(0x3 ...

  8. STL适配器的初步理解

    c++中的适配器有三种:容器适配器,迭代器适配器,函数适配器.下面一一介绍: 1.容器适配器:因为这些容器都是基于其他标准容器实现的所以叫做容器的适配器,具体的有stack,queue,priorit ...

  9. linux使用共享内存通信的进程同步退出问题

    两个甚至多个进程使用共享内存(shm)通信,总遇到同步问题.这里的“同步问题”不是说进程读写同步问题,这个用信号量就好了.这里的同步问题说的是同步退出问题,到底谁先退出,怎么知道对方退出了.举个例子: ...

  10. IOS开发之语音合成(科大讯飞)详解

    1.注册讯飞账号,申请APPID(注意选择IOS平台) 2.加载所需要的类库 3.导入所需要的类库文件头 4.调用申请的APPID以及所需函数,完成语音合成(需要参考官方给出的SDK文件)   详细步 ...