zoukankan      html  css  js  c++  java
  • css3 box-shadow 单边阴影

    1.单边阴影效果

    定义元素的单边阴影效果和调协border的单边边框颜色是相似的,例如:

    1. <html lang="en-US"
    2. <head
    3.   <meta charset="UTF-8"
    4.   <title>box-shadow设置单边阴影效果title
    5.   <style type="text/css"
    6.     .box-shadow {  
    7.        200px;  
    8.       height: 100px;  
    9.       border-radius: 5px;  
    10.       border: 1px solid #ccc;  
    11.       margin: 20px;  
    12.     }  
    13.     .top {  
    14.       box-shadow: 0 -2px 0 red;  
    15.     }  
    16.     .right {  
    17.       box-shadow: 2px 0 0 green;  
    18.     }  
    19.     .bottom {  
    20.       box-shadow: 0 2px 0 blue;  
    21.     }  
    22.     .left {  
    23.       box-shadow: -2px 0 0 orange;  
    24.     }  
    25.   style
    26. head
    27. <body
    28.   <div class="box-shadow top">div
    29.   <div class="box-shadow right">div
    30.   <div class="box-shadow bottom">div
    31.   <div class="box-shadow left">div
    32. body
    33. html

    效果如图3-38所示。

    这个案例中,使用box-shadow给元素设置了顶边、右边、底边和左边的单边阴影效果。主要通过box-shadow的水平和垂直阴影的偏移量 来实现,其中x-offset为正值时,生成右边阴影,反之为负值时,生成左边阴影;y-offset为正值时,生成底部阴影,反之为负值时生成顶部阴 影。此例中是一个单边实影投影效果(阴影模糊半径为0),但是如果阴影的模糊半径不是0,上面的方法还能不能实现单边阴影效果呢?不急着来回答,在上面的 实例中添加一个模糊半径,例如:

    1. .top {  
    2.       box-shadow: 0 -2px 5px red;  
    3.     }  
    4.     .right {  
    5.       box-shadow: 2px 0 5px green;  
    6.     }  
    7.     .bottom {  
    8.       box-shadow: 0 2px 5px blue;  
    9.     }  
    10.     .left {  
    11.       box-shadow: -2px 0 5px orange;  
    12.     } 

    图3-39说明,这个效果并不是理想的单边阴影效果,当box-shadow添加了5px阴影模糊半径后,阴影不再是实影投影,阴影清晰度向外扩散,更具阴影的效果。但造成了另一个问题,给元素其他三个边加上淡淡的阴影效果,可这并不是设计需要的效果。

    那究竟要怎么做呢?此时,box-shadow属性中的阴影扩展半径(spread-radius)会是一个很关键的属性,要实现单边阴影效果,必须配上这个属性(除单边实影之外)。

    1. .top {  
    2.       box-shadow: 0 -4px 5px -3px red;  
    3.     }  
    4.     .right {  
    5.       box-shadow: 4px 0 5px -3px green;  
    6.     }  
    7.     .bottom {  
    8.       box-shadow: 0 4px 5px -3px blue;  
    9.     }  
    10.     .left {  
    11.       box-shadow: -4px 0 5px -3px orange;  
    12.     } 
  • 相关阅读:
    WSP部署错误—SharePoint管理框架中的对象“SPSolutionLanguagePack Name=0”依赖其他不存在的对象
    Elevate Permissions To Modify User Profile
    Error with Stsadm CommandObject reference not set to an instance of an object
    ASP.NET MVC3添加Controller时没有Scaffolding options
    测试使用Windows Live Writer写日志
    配置TFS 2010出现错误—SQL Server 登录的安全标识符(SID)与某个指定的域或工作组帐户冲突
    使用ADO.NET DbContext Generator出现错误—Unable to locate file
    CSS
    HTML DIV标签
    数据库
  • 原文地址:https://www.cnblogs.com/xiaobai-y/p/10020840.html
Copyright © 2011-2022 走看看