CSS3实现图形曲线阴形和翘边阴影
首先,来看看完成之后的效果图:
实现原理
①曲线阴影实现:
多个阴影重叠,就是正常阴影+曲线阴影
正常情况下,有个矩形有正常的阴影,作为主投影,这时候再定义一个有一定弧度圆角的圆角矩形,然后放在正常矩形的下面,并露出一点点底部有弧度的阴影,这样的话就可以形成曲线投影的效果。例如下面这个样子:
主要代码:
html部分:
<div class="effect">
</div>
css部分:
/*曲线阴影*/
.effect{
position: relative;
width:500px;
height:200px;
margin: 0 auto;
box-shadow:0 1px 10px rgba(0,120,215,0.7);
-webkit-box-shadow:0 1px 10px rgba(0,120,215,0.7);
-moz-box-shadow:0 1px 10px rgba(0,120,215,0.7);
-o-box-shadow:0 1px 10px rgba(0,120,215,0.7);
}
/*巧用:after和:before,加上绝对定位的特点,形成一个圆角矩形*/
.effect:after,.effect:before{
position: absolute;
content: "";
z-index:-1;
top:50%;
bottom:0;
left:10px;
right:10px;
box-shadow:0 0 20px rgba(0,120,215,0.9);
-webkit-box-shadow:0 0 20px rgba(0,120,215,0.9);
-moz-box-shadow:0 0 20px rgba(0,120,215,0.9);
-o-box-shadow:0 0 20px rgba(0,120,215,0.9);
border-radius: 100px/10px;
-webkit-border-radius: 100px/10px;
-moz-border-radius: 100px/10px;
-o-border-radius: 100px/10px;
/*border-radius:100px/10px,表示的是,水平方向的半径是100px,垂直方向是10px。*/
}
②翘边阴影
原理:利用:before和:after,加上绝对定位的性质,可以形成一个矩形,这个时候结合CSS3的倾斜属性skew和旋转属性rote。就可以形成一个有旋转角度的平行四边形,这个时候再和原来的矩形重叠,则可产生翘边效果。
原理图:
.png)
主要代码:
html部分:
<ul class="wrap">
<li><img src="img/12.jpg"></li>
<li><img src="img/21.jpg"></li>
</ul>
css部分:
/*翘边阴影*/
.wrap li{
position: relative;
width:350px;
height:250px;
padding:10px;
background: #fff;
border:solid 1px #ccc;
box-shadow: 0 0 15px rgba(0,0,0,0.2);
-webkit-box-shadow: 0 0 15px rgba(0,0,0,0.2);
-moz-box-shadow: 0 0 15px rgba(0,0,0,0.2);
-o-box-shadow: 0 0 15px rgba(0,0,0,0.2);
}
.wrap li img{
width:350px;
height:250px;
}
.wrap li:before{
position: absolute;
content: "";
z-index: -2;
width:325px;
height:220px;
left:22px;
bottom:13px;
background: transparent;
box-shadow: 0 5px 30px rgba(0,0,0,1);
-webkit-box-shadow: 0 5px 30px rgba(0,0,0,1);
-moz-box-shadow: 0 5px 30px rgba(0,0,0,1);
-o-box-shadow: 0 5px 30px rgba(0,0,0,1);
transform:skew(-15deg) rotate(-5deg);
-webkit-transform:skew(-15deg) rotate(-5deg);
-moz-transform:skew(-15deg) rotate(-5deg);
-o-transform:skew(-15deg) rotate(-5deg);
}
.wrap li:after{
position: absolute;
content: "";
z-index: -2;
width:325px;
height:220px;
left:22px;
bottom:13px;
-webkit-box-shadow: 0 5px 30px rgba(0,0,0,0.9);
-moz-box-shadow: 0 5px 30px rgba(0,0,0,0.9);
-o-box-shadow: 0 5px 30px rgba(0,0,0,0.9);
box-shadow: 0 5px 30px rgba(0,0,0,0.9);
-moz-transform:skew(15deg) rotate(5deg);
-o-transform:skew(15deg) rotate(5deg);
-webkit-transform:skew(15deg) rotate(5deg);
transform:skew(15deg) rotate(5deg);
}
完整代码已分享到:
http://git.oschina.net/LuckyWinty/CSS3Shadow
更多CSS3实现的动画效果demo,参考http://git.oschina.net/LuckyWinty/CSS3demo/tree/master/
欢迎关注我的个人微信订阅号:前端生活
转载请注明出处!
CSS3实现图形曲线阴形和翘边阴影的更多相关文章
- 转载---CSS3实现曲线阴影和翘边阴影
预备知识 DIV+CSS基础 圆角:border-radius 2D变换:transform:skew && rotate 伪类::before 和 :after 代码 HTML结构代 ...
- css3 曲线阴影,翘边阴影
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CSS 魔法系列:纯 CSS 绘制图形(心形、六边形等)
<CSS 魔法系列>继续给大家带来 CSS 在网页中以及图形绘制中的使用.这篇文章给大家带来的是纯 CSS 绘制五角星.六角形.五边形.六边形.心形等等. 我们的网页因为 CSS 而呈现千 ...
- 用CSS3绘制图形
参考资料:http://blog.csdn.net/fense_520/article/details/37892507 本文非转载,为个人原创,转载请先联系博主,谢谢~ 准备: <!DOCTY ...
- css3之图形绘制
由于近期的项目中出现了不规则的边框和图形, 所以重新温习一下CSS3的图形绘制...样式绘制的图形比图片的性能要好,体验更佳,关键一点是更加有趣! 以下几个例子主要是运用了css3中border.bo ...
- CSS3特殊图形制作
CSS3特殊图形制作 现在IE8+的浏览器都支持CSS3+HTML5了,IE8及以下的浏览器的浏览器也快告一段落了,大前端的时代来了.废话不多说,现在开始用CSS3画图 1.心型 //HTML < ...
- 关于C3翘边阴影的demo
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 【CSS3】---曲线阴影翘边阴影
效果图 代码 index <!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title& ...
- CSS奇思妙想图形(心形、气泡三角形、切角、梯形、饼图等)
今天看到一篇不错文章,在原来CSS3图形创建基础上扩展了很多. 这里记录总结下 心形 原理:利用 圆形 和 正方形实现 HTML: <div class="heartShaped&qu ...
随机推荐
- day 2 Linux基础
6.用户.群组和权限 1) 新建用户natasha,uid为1000,gid为555,备注信息为"master" useradd natasha usermod -u1000 na ...
- bootstarp3 支持ie8
http://blog.csdn.net/hyb3280660/article/details/51850832 想要bootstarp3 支持ie8? 引入 <!-- 存放全局css/js - ...
- asp.net 生成图形验证码(字母和数字混合)
验证码技术是网站开发过程中比较重要的技术,可以防止非法人员利用注册机或者登陆工具来攻击我们的网站.下面是效果图: 具体实现方法如下: 1.主要思路是:引用Using System.Drawing命名空 ...
- 游戏编程技巧 - Subclass Sandbox
Subclass Sandbox 使用场景 你正在开发一款类似LOL的游戏,里面有许多英雄角色,你决定把这些英雄类交给小弟们实现.因为在这些英雄中,释放放技能时,有的要使用粒子系统造成炫酷的效果,有的 ...
- ABP理论学习之领域服务
返回总目录 本篇目录 介绍 IDomainService接口和DomainService类 样例 创建一个接口 服务实现 调用应用服务 一些讨论 何不只使用应用服务 如何强制使用领域服务 介绍 领域服 ...
- 玩转JavaScript OOP[3]——彻底理解继承和原型链
概述 上一篇我们介绍了通过构造函数和原型可以实现JavaScript中的“类”,由于构造函数和函数的原型都是对象,所以JavaScript的“类”本质上也是对象.这一篇我们将介绍JavaScript中 ...
- 分享我们项目中基于EF事务机制的架构
写在前面: 1. 本文中单元测试用到的数据库,在执行测试之前,会被清空,即使用空数据库. 2. 本文中的单元测试都是正确通过的. 要理解EF的事务机制,首先要理解这2个类:TransactionSco ...
- ASP.Net请求处理机制初步探索之旅 - Part 2 核心
开篇:上一篇我们了解了一个请求从客户端发出到服务端接收并转到ASP.Net处理入口的过程,这篇我们开始探索ASP.Net的核心处理部分,借助强大的反编译工具,我们会看到几个熟悉又陌生的名词(类):Ht ...
- Web3DGame之路(三)分析babylonjs
BabylonJS的例子十分详实 http://doc.babylonjs.com/tutorials Babylonjs的学习比较顺畅,开始做一些深入分析 一.语言选择 首先是js还是ts的问题 ...
- 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC
系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递 七天学会ASP.NET MVC (三)— ...