只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)


Posted in HTML / CSS onJune 04, 2012

本篇文字将展示给你的是,如何利用HTML5/CSS3,仅用5步就可以制作便签贴效果的HTML页面,效果图如下:
(注:图里的文字纯属杜撰,搞笑目的,如有雷同,纯属巧合,谢谢!)
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
注:该效果可以在Safari, Chrome,Firefox和Opera在看到效果,IE上由于对HTML5的支持不完全,所以看不出效果。
第一步:创建基本HTML和正方形
首先添加基本的HTML结构以及构建基本的正方形,代码如下:

复制代码
代码如下:

<ul>
<li><a href="#">
<h2>Dudu:</h2>
<p>最近咋没有美女发帖呢?我一定给个头条推荐,recommend!recommend!</p>
</a></li>
<li><a href="#">
<h2>汤姆大叔:</h2>
<p>Team的一个成员去了Microsoft做SDE3,又得hire new member了</p>
</a></li>
<li><a href="#">
<h2>技术弟弟:</h2>
<p>O2DS和我翻译的书是一样,我一定要比他翻得快, 晚上加班翻,fast! fast! fast!</p>
</a></li>
<li><a href="#">
<h2>Artech:</h2>
<p>WCF的帖子真是少,看来我得多发点帖子让大家学习呢</p>
</a></li>
<li><a href="#">
<h2>吉日嘎拉:</h2>
<p>将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情</p>
</a></li>
<li><a href="#">
<h2>某武林高手:</h2>
<p>低于25000块的面试再也不去了,它grandma的</p>
</a></li>
</ul>

 每个note都加一个href连接,主要是为了支持键盘访问,CSS代码如下:
复制代码
代码如下:

*{
margin:0;
padding:0;
}
body{
font-family:arial,sans-serif;
font-size:100%;
margin:3em;
background:#666;
color:#fff;
}
h2,p{
font-size:100%;
font-weight:normal;
}
ul,li{
list-style:none;
}
ul{
overflow:hidden;
padding:3em;
}
ul li a{
text-decoration:none;
color:#000;
background:#ffc;
display:block;
height:10em;
width:10em;
padding:1em;
}
ul li{
margin:1em;
float:left;
}

效果如下:
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
第二步:阴影和手写草体字
这一步,是我们要实现正方形的阴影效果,并且将字体改为草体(仅限英文),由于google提供了Font API的支持,所以我们可以直接使用了,首先添加对Google API的调用:
复制代码
代码如下:

<link href="http://fonts.googleapis.com/css?family=Reenie+Beanie:regular" rel="stylesheet" type="text/css">

然后设置引用这个字体:
复制代码
代码如下:

ul li h2
{
font-size: 140%;
font-weight: bold;
padding-bottom: 10px;
}
ul li p
{
font-family: "Reenie Beanie" ,arial,sans-serif,微软雅黑;
font-size: 110%;
}

关于阴影,由于各个浏览器还都不完全支持,所以需要分别处理,代码如下:
复制代码
代码如下:

ul li a
{
text-decoration: none;
color: #000;
background: #ffc;
display: block;
height: 10em;
width: 10em;
padding: 1em; /* Firefox */
-moz-box-shadow: 5px 5px 7px rgba(33,33,33,1); /* Safari+Chrome */
-webkit-box-shadow: 5px 5px 7px rgba(33,33,33,.7); /* Opera */
box-shadow: 5px 5px 7px rgba(33,33,33,.7);
}

效果如下:
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
第三步:倾斜正方形
为了让正方形倾斜,我们需要在li->a里添加如下代码:
 
复制代码
代码如下:

ul li a{
-webkit-transform:rotate(-6deg);
-o-transform:rotate(-6deg);
-moz-transform:rotate(-6deg);
}

但是为了能让正方形随机倾斜,而不是全部都倾斜,我们需要使用新的CSS3选择器,让正方形在每2个倾斜4个deg,每3个倾斜负3个deg,每6个倾斜5个deg:
复制代码
代码如下:

ul li:nth-child(even) a{
-o-transform:rotate(4deg);
-webkit-transform:rotate(4deg);
-moz-transform:rotate(4deg);
position:relative;
top:5px;
}
ul li:nth-child(3n) a{
-o-transform:rotate(-3deg);
-webkit-transform:rotate(-3deg);
-moz-transform:rotate(-3deg);
position:relative;
top:-5px;
}
ul li:nth-child(5n) a{
-o-transform:rotate(5deg);
-webkit-transform:rotate(5deg);
-moz-transform:rotate(5deg);
position:relative;
top:-10px;
}

效果如下:
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
第四步:Hover和Focus时放缩正方形
想在hover和focus的时候达到缩放的效果,我们需要添加如下代码:
 
复制代码
代码如下:

ul li a:hover,ul li a:focus{
-moz-box-shadow:10px 10px 7px rgba(0,0,0,.7);
-webkit-box-shadow: 10px 10px 7px rgba(0,0,0,.7);
box-shadow:10px 10px 7px rgba(0,0,0,.7);
-webkit-transform: scale(1.25);
-moz-transform: scale(1.25);
-o-transform: scale(1.25);
position:relative;
z-index:5;
}
设置z-index为5是为了让正方形在放大的时候盖住其它的正方形,同时因为也设置了focus,所以也支持Tab键切换访问,效果如下:
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
第五步:平滑过渡和添加颜色
第四步的特效,看起来有些生硬,我们可以添加Transition来达到平滑动画的效果,另外颜色比较单一,我们可以设置一下不同的颜色,首先在ul->li->a里添加Transition:
复制代码
代码如下:

-moz-transition:-moz-transform .15s linear;
-o-transition:-o-transform .15s linear;
-webkit-transition:-webkit-transform .15s linear;

然后在even和3n里定义不同的颜色:
复制代码
代码如下:

ul li:nth-child(even) a{
-o-transform:rotate(4deg);
-webkit-transform:rotate(4deg);
-moz-transform:rotate(4deg);
position:relative;
top:5px;
background:#cfc;
}
ul li:nth-child(3n) a{
-o-transform:rotate(-3deg);
-webkit-transform:rotate(-3deg);
-moz-transform:rotate(-3deg);
position:relative;
top:-5px;
background:#ccf;
}
这样,就完成了我们最终的效果:
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
总结
至此,我们利用了HTML5和CSS3的基本特性做成了一个还不错的便签贴效果,HTML5/CSS3确实很强大,如果在加一些高级特性,比如和JavaScript结合起来,能实现更加牛逼的效果,从当耐特砖家给大家的HTML5实验室系列文章,就可以看出来了。
另:图里的文字纯属杜撰,如有雷同,纯属巧合,谢谢!
HTML / CSS 相关文章推荐
利用CSS3的定位页面元素
Aug 29 HTML / CSS
纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
Aug 11 HTML / CSS
HTML5离线缓存Manifest是什么
Mar 09 HTML / CSS
HTML5新控件之日期和时间选择输入的实现代码
Sep 13 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
Jul 02 HTML / CSS
基于 HTML5 Canvas实现 的交互式地铁线路图
Mar 05 HTML / CSS
使用HTML5做个画图板的方法介绍
May 03 HTML / CSS
HTML5 Canvas阴影使用方法实例演示
Aug 02 HTML / CSS
HTML5的一个显示电池状态的API简介
Jun 18 HTML / CSS
canvas绘图按照contain或者cover方式适配并居中显示
Feb 18 HTML / CSS
canvas生成带二维码海报的踩坑记录
Sep 11 HTML / CSS
html5自定义video标签的海报与播放按钮功能
Dec 04 HTML / CSS
关于HTML5你必须知道的28个新特性,新技巧以及新技术
May 28 #HTML / CSS
HTML5的标签的代码的简单介绍 HTML5标签的简介
May 28 #HTML / CSS
html5 兼容IE6结构的实现代码
May 14 #HTML / CSS
html5 Canvas绘制线条 closePath()实例代码
May 10 #HTML / CSS
关于 HTML5 的七个传说小结
Apr 12 #HTML / CSS
Html5新标签解释及用法
Feb 17 #HTML / CSS
html5 canvas 简单画板实现代码
Jan 05 #HTML / CSS
You might like
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
2012/04/09 PHP
php调用shell的方法
2014/11/05 PHP
使用php-timeit估计php函数的执行时间
2015/09/06 PHP
WordPress主题制作之模板文件的引入方法
2015/12/28 PHP
PHP 使用位运算实现四则运算的代码
2021/03/09 PHP
js中parseInt函数浅谈
2013/07/31 Javascript
JS+CSS 制作的超级简单的下拉菜单附图
2013/11/22 Javascript
Bootstrap每天必学之导航条
2015/11/27 Javascript
JS冒泡事件与事件捕获实例详解
2016/11/25 Javascript
javascript 定时器工作原理分析
2016/12/03 Javascript
javascript完美实现给定日期返回上月日期的方法
2017/06/15 Javascript
理解 javascript 中的函数表达式与函数声明
2017/07/07 Javascript
JavaScript 中Date对象的格式化代码方法汇总
2017/09/06 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
vue中轮训器的使用
2019/01/27 Javascript
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
2020/09/11 Javascript
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
[27:28]Ti4 冒泡赛第二天 iG vs NEWBEE 1
2014/07/15 DOTA
python每隔N秒运行指定函数的方法
2015/03/16 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
2015/11/20 Python
Python微信库:itchat的用法详解
2017/08/14 Python
python使用rpc框架gRPC的方法
2018/08/24 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
使用Django搭建web服务器的例子(最最正确的方式)
2019/08/29 Python
wxPython+Matplotlib绘制折线图表
2019/11/19 Python
pycharm设置python文件模板信息过程图解
2020/03/10 Python
python 两个一样的字符串用==结果为false问题的解决
2020/03/12 Python
Django 实现将图片转为Base64,然后使用json传输
2020/03/27 Python
总裁办公室主任职责
2014/01/02 职场文书
新员工入职感言
2014/02/01 职场文书
新闻发布会主持词
2014/03/28 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
大学组织委员竞选稿
2015/11/21 职场文书
Python Django项目和应用的创建详解
2021/11/27 Python
mysql使用instr达到in(字符串)的效果
2022/04/03 MySQL