CSS3如何实现曲线阴影和翘边阴影

秋天来啦,秋天来啦;天空像一块覆盖在大地上的蓝宝石,它已经给秋风抹试得洁净而明亮。棉花笑嘻嘻的来了,它听说好朋友—秋姑娘来了,笑的咧开了嘴。玉米在房顶上唱着歌跳着舞,别提多开心了。路边两只黑色的小狗在玩耍,看它那可爱的样子,让人忍不住的笑。石榴也许太兴奋了,竟然笑破了肚皮,苹果跑着来了,当然脸蛋是红彤彤的。

本文实例为大家分享了CSS3实现曲线阴影和翘边阴影的效果,原来不用ps技术也可以实现阴影效果,很棒的效果,供大家参考,具体内容如下

效果图如下:

index.html

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPEhtml>
  2. <htmllang="en">
  3. <head>
  4. <metacharset="UTF-8">
  5. <title>CSS3实现曲线阴影和翘边阴影</title>
  6. <style>
  7. /*源于imooc的学习*/
  8. body{
  9. font-family:"微软雅黑","MicrosoftYaHei";
  10. font-size:20px;
  11. }
  12. body,ul,li,h1{
  13. padding:0;
  14. margin:0;
  15. }
  16. ul{
  17. list-style:noneoutsidenone;
  18. }
  19. .wrap{
  20. width:70%;
  21. height:200px;
  22. margin:50pxauto;
  23. background-color:#fff;
  24. }
  25. .wraph1{
  26. font-size:40px;
  27. text-align:center;
  28. line-height:200px;
  29. }
  30. /**
  31. *box-shadow
  32. *功能:添加一个或多个阴影
  33. *语法:box-shadow:h-shadowv-shadowblurspreadcolorinset;
  34. *参数:
  35. *h-shadow(必需):水平阴影的位置。允许负值。
  36. *v-shadow(必需):垂直阴影的位置。允许负值。
  37. *blur(可选):模糊程度,值越大越模糊。
  38. *spread(可选):阴影的尺寸。一般不推荐设置。
  39. *color(可选):阴影的颜色。请参阅CSS颜色值。
  40. *inset(可选):将外部阴影(outset)改为内部阴影。
  41. *浏览器兼容:
  42. *IE9+、Firefox4、Chrome、Opera以及Safari5.1.1支持box-shadow属性。
  43. */
  44. .effect{
  45. position:relative;
  46. /*box-shadow:h-shadowv-shadowblurcolor[inset];*/
  47. -webkit-box-shadow:01px4pxrgba(0,0,0,0.3),0040pxrgba(0,0,0,0.1)inset;
  48. -moz-box-shadow:01px4pxrgba(0,0,0,0.3),0040pxrgba(0,0,0,0.1)inset;
  49. -o-box-shadow:01px4pxrgba(0,0,0,0.3),0040pxrgba(0,0,0,0.1)inset;
  50. box-shadow:01px4pxrgba(0,0,0,0.3),0040pxrgba(0,0,0,0.1)inset;
  51. }
  52. /**
  53. *:after选择器:在被选元素的内容后面插入内容
  54. *:before选择器:在备选元素额内容后面插入内容
  55. *说明:需要使用content属性来指定要插入的内容
  56. *浏览器兼容:
  57. *对于IE8及更早版本的:after,必须声明<!DOCTYPE>。
  58. *
  59. *content属性用于定义元素之前或之后放置的生成内容。默认地,这往往是行内内容,不过该内容创建的
  60. *框类型可以用属性display控制。
  61. */
  62. .effect::after,.effect::before{
  63. content:'';
  64. background:#f00;
  65. position:absolute;
  66. top:50%;
  67. bottom:0;
  68. left:20px;
  69. right:20px;
  70. -webkit-box-shadow:0020pxrgba(0,0,0,0.8);
  71. -moz-box-shadow:0020pxrgba(0,0,0,0.8);
  72. -o-box-shadow:0020pxrgba(0,0,0,0.8);
  73. box-shadow:0020pxrgba(0,0,0,0.8);
  74. border-radius:100px/10px;/*水平半径/垂直半径*/
  75. z-index:-1;
  76. }
  77. .box{
  78. width:980px;
  79. height:auto;
  80. clear:both;
  81. overflow:hidden;
  82. margin:20pxauto;
  83. }
  84. .boxli{
  85. width:300px;
  86. height:210px;
  87. float:left;
  88. margin:20px10px;
  89. border:2pxsolid#EFEFEF;
  90. -webkit-box-shadow:01px4pxrgba(0,0,0,0.27),0060pxrgba(0,0,0,0.1)inset;
  91. -moz-box-shadow:01px4pxrgba(0,0,0,0.27),0060pxrgba(0,0,0,0.1)inset;
  92. -o-box-shadow:01px4pxrgba(0,0,0,0.27),0060pxrgba(0,0,0,0.1)inset;
  93. box-shadow:01px4pxrgba(0,0,0,0.27),0060pxrgba(0,0,0,0.1)inset;
  94. position:relative;
  95. background-color:#FFF;
  96. }
  97. .boxliimg{
  98. display:block;
  99. width:290px;
  100. height:200px;
  101. margin:5px;
  102. }
  103. .boxli:before{
  104. content:'';
  105. position:absolute;
  106. width:90%;
  107. height:80%;
  108. left:20px;
  109. bottom:8px;
  110. /*background-color:#F00;*/
  111. background-color:transparent;
  112. box-shadow:08px20pxrgba(0,0,0,0.6);
  113. -webkit-box-shadow:08px20pxrgba(0,0,0,0.6);
  114. -moz-box-shadow:08px20pxrgba(0,0,0,0.6);
  115. -o-box-shadow:08px20pxrgba(0,0,0,0.6);
  116. /**
  117. *transform
  118. *功能:向元素应用2D或3D转换
  119. *语法:transform:none|transform-functions
  120. *参数:
  121. *skew(x-angle,y-angle)定义沿着X和Y轴的2D倾斜转换
  122. *skewX(angle)定义沿着X轴的2D倾斜转换。
  123. *skewY(angle)定义沿着y轴的2D倾斜转换。
  124. *浏览器兼容:
  125. *InternetExplorer9支持替代的-ms-transform属性(仅适用于2D转换)
  126. *Safari和Chrome支持替代的-webkit-transform属性(3D和2D转换)
  127. *Opera只支持2D转换。
  128. */
  129. -webkit-transform:skewX(-11deg)rotate(-4deg);
  130. -moz-transform:skewX(-11deg)rotate(-4deg);
  131. -ms-transform:skewX(-11deg)rotate(-4deg);
  132. -o-transform:skewX(-11deg)rotate(-4deg);
  133. transform:skewX(-11deg)rotate(-4deg);
  134. z-index:-1;
  135. }
  136. .boxli:after{
  137. content:'';
  138. position:absolute;
  139. width:90%;
  140. height:80%;
  141. right:20px;
  142. bottom:8px;
  143. background-color:transparent;
  144. box-shadow:08px20pxrgba(0,0,0,0.6);
  145. -webkit-box-shadow:08px20pxrgba(0,0,0,0.6);
  146. -moz-box-shadow:08px20pxrgba(0,0,0,0.6);
  147. -o-box-shadow:08px20pxrgba(0,0,0,0.6);
  148. -webkit-transform:skewX(11deg)rotate(4deg);
  149. -moz-transform:skewX(11deg)rotate(4deg);
  150. -ms-transform:skewX(11deg)rotate(4deg);
  151. -o-transform:skewX(11deg)rotate(4deg);
  152. transform:skewX(11deg)rotate(4deg);
  153. z-index:-1;
  154. }
  155. </style>
  156. </head>
  157. <body>
  158. <divclass="wrapeffect">
  159. <h1>ShadowEffect</h1>
  160. </div>
  161. <ulclass="box">
  162. <li><imgsrc="images/1.jpg"alt="1.jpg"></li>
  163. <li><imgsrc="images/2.jpg"alt="2.jpg"></li>
  164. <li><imgsrc="images/3.jpg"alt="3.jpg"></li>
  165. </ul>
  166. </body>
  167. </html>

以上就是本文的全部内容,希望对大家的学习有所帮助。

标签: