css如何实现图片堆叠效果

css如何实现图片堆叠效果

1、初始index.html

为了建立第一张照片,也就是最上面的那张。我们只需要添加一个div,里面包含照片的img。就这么多,剩下的效果都是通过CSS来实现的。确保div的class为stackone。

             Photo Stack       * {      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);    }         
@@##@@

初始的效果如下:

css如何实现图片堆叠效果

(推荐教程:CSS入门教程)

立即学习“前端免费学习笔记(深入)”;

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);}

完成图:

2781c60c7d342a33acff95dc32d6910.png

相关视频教程推荐:css视频教程

7cc388c233d411f9b468cc02cd2bc9d.png

以上就是css如何实现图片堆叠效果的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1614953.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 04:39:52
下一篇 2025年12月24日 04:40:07

相关推荐

  • css如何实现n宫格布局

    设计思路(无关你是scss还是less) 1、为了方便内部元素水平/垂直居中, 整体我们用flex布局. 2、使用正方形占位, 因为用了padding-top:100%, 所以我们就需要再单独用一个div来装内容, 我给他起名”item__content”. 3、为了让内容的…

    好文分享 2025年12月24日
    000
  • css如何实现表单验证功能

    原理 表单元素中,有一个pattern属性,可以自定义正则表达式(如手机号、邮箱、身份证..);valid伪类,可以匹配通过pattern验证的元素;invalid伪类则相反,可以匹配未通过pattern验证的元素。 (推荐教程:CSS入门教程) html代码 布局很简单,input跟button是…

    2025年12月24日
    000
  • css实现背景图满屏效果

    想让整个界面有一个背景图片,自然想到的是在body上加background,代码如下: body { width:100%; height: 100%; /* 加载背景图 */ background: url(“../static/images/index/backImg.jpg”) no-repe…

    2025年12月24日
    000
  • css中position属性有哪些用法

    position属性 position属性指定用于元素的定位方法的类型(静态,相对,固定,绝对或粘性)。 有五种不同的值: •static•relative•fixed•absolute•sticky 然后使用top,bottom,left和right属性定位元素。但是,除非首先设置position…

    2025年12月24日
    000
  • css如何修改默认滚动条样式

    前言: 很多项目都需要改变滚动条的默认样式,并不想单独下载和引入插件。 修改方法:(推荐教程:CSS入门教程) &::-webkit-scrollbar { // 滚动条的背景 width: 16px; background: #191a37; height: 14px; } &::…

    2025年12月24日
    000
  • css中zoom属性有什么作用

    css zoom属性 zoom:设置或检索对象的缩放比例,触发IE浏览器的haslayout属性,解决浮动,margin重叠等一些问题。 语法: zoom:normal (推荐教程:CSS教程) 立即学习“前端免费学习笔记(深入)”; 参数: normal:使用对象的实际尺寸(默认值)number:…

    2025年12月24日
    000
  • css如何实现开关效果

    首先是构思: 我们使用标签来实现这个效果。 checkbox的选中、未选中的特性,刚好对应开关的打开、关闭 on:打开 off:关闭 未选中,则关闭开关 选中,则打开开关 效果: 立即学习“前端免费学习笔记(深入)”; (推荐教程:CSS入门教程) 开始画出off、on状态的草图 这里要讲解一下,使…

    2025年12月24日 好文分享
    000
  • css如何实现一个自适应容器

    目标: 实现一个宽度自适应,高度为宽度一半的容器。 一、思考如何实现 这个问题类似于:我们在移动端页面,上面有一张宽度 100% 的图片,如果我们没设置高度,则图片会根据原有尺寸,等比缩放。 我们可以借助这个想法,根据元素高度,来为元素设置一个相应比例的高度即可。 立即学习“前端免费学习笔记(深入)…

    2025年12月24日
    000
  • 详解css行内样式、内嵌样式与外部引用样式的使用方法

    三中的使用方法的简单实例如下: 行内样式: css行内样式> (推荐教程:CSS教程) 内嵌样式: css内嵌样式#div{width:100px;height:100px;background:red;}> 外部式: 立即学习“前端免费学习笔记(深入)”; css内嵌样式 > c…

    2025年12月24日
    000
  • css中有哪些方法可以实现垂直居中

    css实现垂直居中的方法如下: 1、利用line-height实现居中,这种方法适合纯文字类的; .parents { height: 400px; line-height: 400px; width: 400px; border: 1px solid red; text-align: center…

    2025年12月24日 好文分享
    000
  • css实现等高布局有哪些方式

    什么是等高布局? 指在同一个父容器中,子元素高度相等的布局。 从等高布局实现方式来说分为两类: 1、伪等高 子元素高度差依然存在,只是视觉上给人感觉就是等高。 立即学习“前端免费学习笔记(深入)”; 2、真等高 子元素高度相等。 伪等高实现方式: 通过负margin和Padding实现 真等高实现方…

    2025年12月24日
    000
  • css如何使用伪元素清除浮动

    什么是bfc? 块级格式化上下文,是一个独立的渲染区域,让处于 BFC 内部的元素与外部的元素相互隔离,使内外元素的定位不会相互影响。 我们先了解一个名词:BFC(block formatting context),中文为“块级格式化上下文”。 先记住一个原则:  如果一个元素具有BFC,那么内部元…

    2025年12月24日
    000
  • css中内容过长怎么解决

    大家在写css的时候,肯定有过忘记设计里面存在的临界的情况。举个例子来说吧,当内容的长度超过了我们的期望值,我们也无法解释其中的可能性,页面的设计很可能会因此而崩掉。我们不能保证css总是会按照我们期望的那样工作,但至少我们可以用不同类型的内容来测试,以减少这种情况的发生。 具体情况如下: 一个右侧…

    2025年12月24日
    000
  • 关于css中的类名问题的详细介绍

    以下以数字开头的 css 类名不会生效: .1st{ color: red;} 一个合法的 CSS 类名必需以下面其中之一作为开头: 1、下划线 _ 2、短横线 – 3、字母 a – z 立即学习“前端免费学习笔记(深入)”; 然后紧跟其他 _ , – 数字或字母…

    2025年12月24日
    000
  • css实现文本两端对齐的方法

    本篇文章介绍了使用css实现文本两端对齐的效果,具有一定的参考价值,感兴趣的朋友可以看看。 css实现文本两端对齐的方法 说起text-align,大家一定都不觉得陌生,我们常用关键字left、right、center实现行内元素相对父元素左、右、居中对齐,当然我们也使用justify来实现文本两端…

    2025年12月24日
    000
  • 如何改变css伪元素的样式

    本篇文章介绍了如何改变css伪元素样式的方法,希望对学习前端css的朋友有帮助! 一、CSS伪元素 CSS 伪元素用于向某些选择器设置特殊效果。 伪元素的用法如下: selector:pseudo-element {property:value;} CSS 类也可以和伪元素搭配使用 selector…

    2025年12月24日
    000
  • css实现文字过长显示省略号

    本篇文章介绍了css实现文字过长显示省略号的方法,具有一定的参考价值,希望对学习css的朋友有帮助! 一、CSS样式 解决文字过长显示省略号问题 1、一般样式 一般 css 样式,当宽度不够时,可能会出现换行的效果。这样的效果在某些时候肯定是不行的,可以修改 css 样式来解决这个问题。 text-…

    2025年12月24日 好文分享
    000
  • css制作轮播图

    下面是style部分: *{margin:0;padding:0;} a{text-decoration:none} li{list-style:none;} 设计宽度不要超过轮播图片的总宽度,再加上第一张图片的宽度(加第一张图片的宽度是为了轮播效果看得见)我的是1500宽度和200的高度,再设置溢…

    2025年12月24日
    000
  • 给你的网页弹窗加个遮罩

    本篇文章为你介绍使用css实现网页遮罩效果,主要是通过控制两个盒子的显示层级,控制遮罩层的背景色和显示透明度来达到遮罩效果。希望对学习css的朋友有帮助。 给你的弹窗加个遮罩 遮罩层效果相信是许多开发需求时候经常会碰到的一个情况,实现遮罩层效果的方式有很多种,下面介绍最简单的一种,利用CSS来实现遮…

    2025年12月24日
    000
  • css如何清除浮动

    1、给父级元素设置高度 效果图: 代码: * { padding: 0; margin: 0; } .header { height: 30px; line-height: 30px; background-color: #333; } .header a { color: #fff; text-d…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信