• box-shadow


    box-shadow算是css3中比较常用的属性,通常的用法我们会给它传4个参数,就像下面的这个例子:

    水平偏移和垂直偏移为0,模糊半径为10px,阴影颜色为正红色。

    .box{
      width: 80px;
      height: 80px;
      box-shadow: 0 0 10px #f00;
    }

    当然我们也可以给它传更多的参数,来得到不同的效果:

    box-shadow可以传6个参数:

    1、inset ,表示内阴影,不填表示外阴影。

    2、阴影的水平偏移量,正值时阴影在容器的右边,负值时阴影在容器的左边。

    3、阴影的垂直偏移量,正值时阴影在容器的下边,负值时阴影在容器的上边。

    4、阴影模糊半径

    5、阴影的扩展半径。如果是正值,阴影将扩大,如果是负值,阴影将缩小。

    6、阴影颜色。

    内阴影

    .box {
    width: 80px;
    height: 80px;
    box-shadow: inset 0 0 10px #f00;
    background-color: #dee;

    我们也可以给容器同时设置内阴影和外阴影,多组阴影之间用,分隔:

    .box {
      width: 80px;
      height: 80px;
      margin: 20px;
      box-shadow: inset 0 0 10px #f00,0 0 10px #00f;
    }

    还有一点需要注意的是,我们不能直接给img设置内阴影,看下这个例子:

    设置外阴影时:

    <style>
        img{
            box-shadow: 0px 0px 10px #f00;
        }
    </style>
    
    <img src="2551.jpg" width="200px">

    但是设置内阴影时:

    <style>
        img{
            box-shadow: inset 0px 0px 10px #fff;
        }
    </style>
    
    <img src="2551.jpg" width="200px">

    解决的方法很简单,只要给img外层加上一个容器,把阴影加在该容器上即可。

    扩展半径

    它比内阴影还要少用到

    .box {
      width: 100px;
      height: 100px;
      background-color: #f00;
      box-shadow: 0 0 0 10px #edd;
    }

    这里没有设偏移量和模糊半径。从视觉上看,就像给box加了一个10px的边框一样。

    当然box-shadow不会影响盒模型。

    我们来测试下扩展半径为0、正、负值的情况,这次配合偏移和模糊效果来看:

    .box {
      width: 100px;
      height: 100px;
      background-color: #f00;
      box-shadow: 10px 0 10px 0px #00f;//扩展半径为0
    }
    
    .box {
      width: 100px;
      height: 100px;
      background-color: #f00;
      box-shadow: 10px 0 10px 6px #00f;//扩展半径为正值
    }
    
    .box {
      width: 100px;
      height: 100px;
      background-color: #f00;
      box-shadow: 10px 0 10px -6px #00f;//扩展半径为负值
    }

    为容器设置多个阴影

    多个阴影在上面的内阴影例子中已经见过,但这里要讲的不是如何设置多个阴影,而是多个阴影之间的层叠关系。


             

    就像蛋糕,最上面的阴影在最顶层(视觉上是最里层),写在最下面的阴影在最低层(视觉上是最外层)。如果上面的阴影太大就会遮住下面的阴影。

    比如我扩大底层的扩展半径为40px,此时的阴影效果如图:白色阴影将中间的几个阴影覆盖掉了。

  • 相关阅读:
    眼过千遍不如手过一遍!
    等老了,做一个视频编辑
    不建议用wxWidgets,底层有过多的bug
    MFC新婚之夜(笑昏,大概是指MFC的人固步自封)
    Twitter算法
    Ruby on rails3
    重提基数排序
    Hashtable Dictionary List
    try { var mergeFilePath = string.Format("{0}mergepdf.pdf", tempDownDir); PDFPrintHelper.MergePDFFile(pdfList, mergeFi
    查找树
  • 原文地址:https://www.cnblogs.com/qianlegeqian/p/3984471.html
Copyright © 2020-2023  润新知