纯css 使元素像画卷一样展开或者横向展开

效果如图

 

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
   div {
    overflow: hidden;
    -webkit-animation: ani 0.8s linear both;
    animation: ani 0.8s linear both;
}

div img {
    width: auto;
    height: 100%;
}

@keyframes ani {
    from {
        max-width: 0;
    }

    to {
        max-width: 25vw;
    }
}
</style>
<body>
    <div>
        <img src="images/index/rcs_en_icon.png" alt="">
    </div>
</body>
</html>

主要思路就是高度不变,控制宽度的变化

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一种实现文字画卷展开效果的 CSS 代码: HTML 代码: ``` <div class="text-scroll"> <div class="scroll-mask"></div> <div class="scroll-text"> <p>这里是需要展示的文本内容。</p> </div> </div> ``` CSS 代码: ``` .text-scroll { position: relative; overflow: hidden; } .scroll-mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%); transform: translateY(-100%); animation: scroll 2s ease-in-out forwards; } .scroll-text { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 20px; box-sizing: border-box; transform: translateY(-100%); animation: scroll 2s ease-in-out forwards; } @keyframes scroll { 0% { transform: translateY(-100%); } 100% { transform: translateY(0%); } } ``` 以上代码中,我们使用了一个父级 `.text-scroll` 元素来包裹需要展示的文本内容。我们将这个父级元素设置为相对定位,并将其 `overflow` 属性设置为 `hidden`,以便隐藏其子元素溢出的部分。然后,我们创建两个子元素,一个是用于遮罩效果的 `.scroll-mask`,另一个是用于显示文本内容的 `.scroll-text`。 我们使用 `linear-gradient` 背景渐变样式和 `transform` 属性来实现遮罩效果。在这里,我们将背景渐变的起点设置为透明色,终点设置为白色,使得遮罩从顶部逐渐向下展开。`transform: translateY(-100%)` 将遮罩元素移出可视区域,`animation` 属性将 `scroll` 动画应用到遮罩元素上,使其在 2 秒内向下展开至完全覆盖文本内容。 我们将文本内容通过 `.scroll-text` 元素显示出来,同样使用 `transform` 属性和 `animation` 属性来实现一个向下展开的动画效果。最后,我们将这些样式应用到相应的元素上,就可以实现文字画卷展开效果了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值