国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS實現照片堆疊效果的實例代碼

2024-07-11 09:00:13
字體:
來源:轉載
供稿:網友

實現效果

 

步驟

1.初始index.html

為了建立第一張照片,也就是最上面的那張。我們只需要添加一個div,里面包含照片的img。就這么多,剩下的效果都是通過CSS來實現的。確保div的class為stackone。

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <meta name="viewport" content="width=device-width, initial-scale=1.0">  <meta http-equiv="X-UA-Compatible" content="ie=edge">  <title>Photo Stack</title>  <style>    * {      margin: 0;      padding: 0;    }    html,    body {      width: 100%;      height: 100%;      overflow: hidden;    }    .stackone {      --img-width: 480px;      --img-height: 320px;      border: 6px solid #fff;      float: left;      height:var(--img-height);      width: var(--img-width);      margin: 50px;      position: relative;      -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);      -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);      box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);    }    .stackone img {      width: var(--img-width);    }  </style></head><body>  <div class="stackone">    <img src="../../../assets/image/landscape-4378548_960_720.jpg">  </div></body></html>

初始的效果如下:


 

2.The First Pseudo Element

現在我們添加一層底片。我們想得到的效果是:底層圖片看上去好像是在頂層照片下面。我們可以用CSS的偽類:before來實現。

.stackone::before {  content: "";  height:var(--img-height);  width: var(--img-width);  background: #eff4de;  border: 6px solid #fff;  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);}

此時效果相差甚遠


 

3.完善before

這不是我們想要的效果。如何修復?我們需要給:before加入一些定位,然后設置z-index將它放在后面。

.stackone::before {  content: "";  height:var(--img-height);  width: var(--img-width);  background: #eff4de;  border: 6px solid #fff;  position: absolute;  z-index: -1;  top: 0px;  left: -10px;  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  -webkit-transform: rotate(-5deg);  -moz-transform: rotate(-5deg);  -o-transform: rotate(-5deg);  -ms-transform: rotate(-5deg);  transform: rotate(-5deg);}

此時效果正常,初見端倪


 

4.The Second Pseudo Element

 

.stackone::after {  content: "";  height:var(--img-height);  width: var(--img-width);  background: lightblue;  border: 6px solid #fff;  position: absolute;  z-index: -1;  top: 5px;  left: 0px;  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);  -webkit-transform: rotate(4deg);  -moz-transform: rotate(4deg);  -o-transform: rotate(4deg);  -ms-transform: rotate(4deg);  transform: rotate(4deg);}

最后大功告成,具有層次感:


 

原創說明

本篇文章遷移自本人于2014年12月29日 16:38:48在CSDN的博客 《css實現照片堆疊效果》
源博客參考翻譯自 《Use Pseudo Elements to Create an Image Stack Illusion》
Github項目源碼

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淮滨县| 谢通门县| 班戈县| 营口市| 同心县| 吴川市| 儋州市| 牡丹江市| 招远市| 石林| 云霄县| 湘阴县| 衡阳县| 安陆市| 淮南市| 建昌县| 阳曲县| 科技| 色达县| 措勤县| 中牟县| 陆良县| 文成县| 孝义市| 汉川市| 怀远县| 双鸭山市| 安顺市| 大港区| 贡嘎县| 桃园市| 怀仁县| 驻马店市| 辉南县| 荥阳市| 兴和县| 正镶白旗| 沙田区| 东乡县| 巴东县| 遵义县|