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。就可以形成一个有旋转角度的平行四边形,这个时候再和原来的矩形重叠,则可产生翘边效果。

原理图:


主要代码:

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/

 

欢迎关注我的个人微信订阅号:前端生活

转载请注明出处!

转载于:https://www.cnblogs.com/LuckyWinty/p/5270030.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491086.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾飞资本任溶 :互联网大脑,新的天方夜谭?—评《崛起的超级智能》

作者&#xff1a;任 溶 腾飞资本董事长&#xff0c;城市大脑创新合伙人基金管理合伙人因为我做科技产业投资工作&#xff0c;投资领域涉及互联网等新经济、新模式和新技术等&#xff0c;所以这几年总是听到一些言论&#xff0c;诸如“互联网已死”&#xff0c;或者“互联网红利…

OpenCV学习(二十四 ):角点检测(Corner Detection):cornerHarris(),goodFeatureToTrack()

OpenCV学习(二十四 &#xff09;&#xff1a;角点检测(Corner Detection):cornerHarris(),goodFeatureToTrack() 参考博客&#xff1a; Harris角点检测原理详解 Harris角点检测原理及C实现 OpenCV亚像素角点cornerSubPixel()源代码分析 Taylor公式&#xff08;泰勒公式&#x…

在线ps网站

https://ps.gaoding.com/

无人驾驶技术的7大典型应用场景

来源 | 数据观综合无人驾驶风口来临&#xff0c;引得各方资本竞相追逐。据业内预测&#xff0c;2019年到2020年无人驾驶L3&#xff08;条件自动&#xff09;级别的汽车将实现量产化&#xff0c;2022年后部分企业将实现L4&#xff08;高度自动&#xff09;量产&#xff0c;若要实…

数字图像处理学习笔记(一):特征检测和匹配概述

数字图像处理学习笔记&#xff08;一&#xff09;&#xff1a;特征检测和匹配概述 参考博客&#xff1a; 特征点的匹配SIFT特征详解数字图像处理学习笔记&#xff08;二&#xff09;&#xff1a;SIFT&#xff08;尺度不变特征变换&#xff09;算法 1、特征点概述 如何高效且…

iOS强制切换横屏、竖屏

切换横竖屏最直接的方式是调用device的setOrientation方法。但是从sdk3.0以后&#xff0c;这个方法转为似有API&#xff0c;如果要上AppStore的话&#xff0c;要慎用&#xff01; if ([[UIDevice currentDevice] respondsToSelector:selector(setOrientation:)]) { [[UIDevice …

PDF在线编辑

http://edit.foxitcloud.cn/

数字图像处理学习笔记(二):SIFT(尺度不变特征变换)算法

数字图像处理学习笔记&#xff08;二&#xff09;&#xff1a;SIFT&#xff08;尺度不变特征变换&#xff09;算法 一、概述&#xff1a; 提到特征点算法&#xff0c;首先就是大名鼎鼎的SIFT算法了。SIFT的全称是Scale Invariant Feature Transform&#xff0c;尺度不变特征变…

微软向马斯克的人工智能公司OpenAI投资10亿美元

来源: 新浪财经新浪美股讯微软(Microsoft)周一宣布&#xff0c;将向埃隆-马斯克(Elon Musk)的OpenAI投资10亿美元&#xff0c;打造能够处理更复杂任务的人工智能。根据声明&#xff0c;通过合作&#xff0c;两家公司将建立新的Azure AI超级计算技术&#xff0c;微软将成为OpenA…

java堆分析神器MAT

Memory Analyzer&#xff08;MAT&#xff09;基于Eclipse的软件http://www.eclipse.org/mat/转载于:https://www.cnblogs.com/SEC-fsq/p/5282092.html

keras.metrics中的accuracy

keras.metrics有六种accuracy&#xff0c;其使用的场景如下&#xff1a; accuracy 真实标签和模型预测均为标量&#xff0c;如真实标签为[0,1,1,0,2,0]&#xff0c;模型输出的预测为[0,2,1,1,2,0]&#xff0c;此时accuracy4/6 categorical_accuracy ​​​​​​​真实标签为…

数字图像处理学习笔记(三):ORB算法(尺度不变特征变换)Oriented FAST and Rotated BRIEF

数字图像处理学习笔记&#xff08;三&#xff09;&#xff1a;ORB算法&#xff08;尺度不变特征变换&#xff09;Oriented FAST and Rotated BRIEF 一、概述 参考&#xff1a;特征点匹配特征检测方法汇总 ORB的全称是Oriented FAST and Rotated BRIEF&#xff0c;是目前来说…

华为:对部分顶尖学生实行年薪制 最高200万元

来源&#xff1a;EETOP7月23日上午消息&#xff0c;据华为总裁办签发的电子邮件&#xff0c;华为对部分2019届顶尖学生实行年薪制管理。华为以电邮通知【2019】068号文发布了8名天才少年的年薪方案&#xff0c;这8名人员全部为2019届应届顶尖学生&#xff0c;其年薪的最低限为8…

解决PendingIntent传递参数为空的问题

PendingIntent pIntent PendingIntent.getActivity(context, 0, intent, 0); 在接收端&#xff0c;接收的数据一直为null&#xff0c;在google官方网站查了下&#xff0c;发现问题出在flags上&#xff1a;PendingIntent.getActivity原型如下&#xff1a; PendingIntent.get…

matplotlib使用GridSpec自定义子图位置 (非对称的子图)

上图的结构可以用一下两种方式画&#xff1a; import matplotlib.pyplot as plt from matplotlib.gridspec import GridSpecfig plt.figure(1) gs GridSpec(3, 3)ax1 plt.subplot(gs[0, :]) ax2 plt.subplot(gs[1, :2]) ax3 plt.subplot(gs[1:, 2]) ax4 plt.subplot(gs[…

大脑简史(1)-历史上的大事件

来源&#xff1a;人机与认知实验室能够上天入地&#xff0c;却不知道自己的大脑&#xff0c;笔者认为这是很多人的疑惑。随着科技的发展&#xff0c;我们能够延伸到的地方越来越多&#xff0c;无论是伸手不见五指的海底&#xff0c;还是扶摇直上九万里的浩渺星空&#xff0c;都…

字符集和编码规范:ASCII,Unicode和UTF-8, latin1,BIG5,GBK

字符集和编码方式&#xff1a;ASCII,Unicode和UTF-8, latin1,BIG5,GBK 参考&#xff1a; 字符集 字符集编码详解 一、 ASCII码 我们知道&#xff0c;在计算机内部&#xff0c;所有的信息最终都表示为一个二进制的字符串。每一个二进制位&#xff08;bit&#xff09;有0和1两…

作业3词频统计

(1). 实现一个控制台程序&#xff0c;给定一段英文字符串&#xff0c;统计其中各个英文单词&#xff08;4字符以上含4字符&#xff09;的出现频率。 答&#xff1a; 从文件读取遍历字符串大写转小写将句子分隔成一个个单词判断是否为单词计算单词出现的频率预估时间10minutes10…

MATLAB报错Invalid ADAPTORNAME specified. Type 'imaqhwinfo' for a list of available ADAPTORNAMEs. Image

MATLAB报错Invalid ADAPTORNAME specified. Type imaqhwinfo for a list of available ADAPTORNAMEs. Image acquisition adaptors may be available as downloadable support packages. Open Support Package Installer to install additional vendors. 这时需要安装两个安装…

陈天奇:十年机器学习科研之路(附链接)

来源&#xff1a;深度学习自然语言处理链接&#xff1a;https://zhuanlan.zhihu.com/p/74249758导读十年前&#xff0c;MSRA的夏天&#xff0c;刚开始尝试机器学习研究的我面对科研巨大的不确定性&#xff0c;感到最多的是困惑和迷茫。十年之后&#xff0c;即将跨出下一步的时候…