图片叠层效果

效果展示如图:

伪元素实现

 

使用伪元素首先要搞清楚的就是伪元素的层级关系。伪元素与标签的层级关系是:after>before>标签元素

我们可以先做一个小demo做个测试。

{% hideBlock 测试代码%}

演示地址:https://gethtml.cn/project/2020/03/25/demo.html

例如:

{% endhideBlock %}

如果很清晰的可以看到三个div的层级关系。标签元素在最下边,标签元素的上方是before,在上边就是after元素了。

既然搞明白了他们的层级关系,那么接下来利用为元素实现层叠图片效果就很容易了。

效果中存在三张尺寸不同的图。那么最小的自然要用标签做了,做大的用after。这样就可以避免给伪元素调整层级的坑了。

演示地址:https://gethtml.cn/project/2020/03/12/index.html

利用图片元素实现

利用图实现较为简单。因为图片可以对每一张单独设置,而无需考虑层级问题。

演示地址:https://gethtml.cn/project/2020/03/12/index-img.html

轮播图示例

演示地址:https://gethtml.cn/project/2020/03/25/slide.html

实现思路

两侧旁的按钮可以参考2020-03-17小米轮播图示例。

主要是利用checked伪类判断那一个被选中,然后切换图片。

动画效果方面:首先默认布局应该是中间的变大,左右一边一个。

当被选中后,那么移动到中间,并且原来放大的图移动到右边,右边移动到左边。这样实现一个反复的过程即可。

所以实现起来就很简单了。首先调整好默认位置

其次就是设置点击时的样式

完整代码示例