【后端学前端】第四天 css动画 垂直轮播效果(css变量、位移缩放动画、动画延迟)

1、学习信息

视频地址:css动画 垂直轮播效果(css变量、位移缩放动画、动画延迟)_哔哩哔哩_bilibili

2、源码

 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><link rel="stylesheet" href="http://at.alicdn.com/t/c/font_4156699_i9rfozb6ac.css"><style>* {margin: 0;padding: 0;box-sizing: border-box;}body {height: 100vh;display: flex;justify-content: center;align-items: center;background: linear-gradient(200deg, #fda09b, #918ef9);}.container {width: 500px;height: 300px;position: relative;display: flex;justify-content: center;align-items: center;}.card {width: 430px;height: 100px;padding: 0 20px;border-radius: 100px 20px 20px 100px;background-color: #ffffff;;position: absolute;opacity: 0;animation: animate 10s linear infinite;animation-delay: calc(2s * var(--d));display: flex;justify-content: center;align-items: center;}.card .img {width: 90px;height: 90px;position: absolute;left: 0;top: 0;background-color: #ffffff;padding: 5px;border-radius: 50%;box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);}.card .img img {width: 100%;height: 100%;object-fit: cover;border-radius: 50%;}.card .content {display: flex;align-items: center;}/*.card .detail {*//*    margin-left: 50px;*//*}*/.card .detail span {display: block;font-size: 18px;font-weight: 600;margin-bottom: 8px;}.card a {font-size: 14px;text-decoration: none;background: linear-gradient(to bottom, #fbc5ed, #a6c1ee);padding: 7px 18px;color: #ffffff;border-radius: 25px;margin-left: 30px;}@keyframes animate {0% {opacity: 1;transform: translateY(100%) scale(0.5);}5%, 20% {opacity: 0.4;transform: translateY(100%) scale(0.7);}25%, 40% {opacity: 1;transform: translateY(0%) scale(1);}45%, 60% {opacity: 0.4;transform: translateY(-100%) scale(0.7);}65%, 100% {opacity: 0;transform: translateY(-100%) scale(0.5);}}.container:hover .card{animation-play-state: paused;}</style><script>window.onload = () => {let searchIcon = document.querySelector(".icon")let clearIcon = document.querySelector(".clear")let searchBar = document.querySelector(".searchBar")let inp = document.querySelector(".inp")searchIcon.addEventListener("click", () => {searchBar.classList.toggle("changeWidth")})clearIcon.addEventListener("click", () => {inp.value = ""})}</script>
</head>
<body>
<div class="container"><div class="card" style="--d:-1;"><div class="content"><div class="img"><img src="1.png"></div><div class="detail"><span>王婉儿(Anna)</span><p>寻找真爱的微笑使者。</p></div></div><a href="#">关注</a></div><div class="card" style="--d:0;"><div class="content"><div class="img"><img src="1.png"></div><div class="detail"><span>王婉儿(Anna)</span><p>寻找真爱的微笑使者。</p></div></div><a href="#">关注</a></div><div class="card" style="--d:1;"><div class="content"><div class="img"><img src="1.png"></div><div class="detail"><span>王婉儿(Anna)</span><p>寻找真爱的微笑使者。</p></div></div><a href="#">关注</a></div><div class="card" style="--d:2;"><div class="content"><div class="img"><img src="1.png"></div><div class="detail"><span>王婉儿(Anna)</span><p>寻找真爱的微笑使者。</p></div></div><a href="#">关注</a></div><div class="card" style="--d:-3;"><div class="content"><div class="img"><img src="1.png"></div><div class="detail"><span>王婉儿(Anna)</span><p>寻找真爱的微笑使者。</p></div></div><a href="#">关注</a></div></div>
<div class="register"></div>
</body>
</html>

3、 块级元素和行级元素

常用的内联元素有:

<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> (块引用)、<form>

常用的内联元素有:

<a>、<span>、<br>、<i>、<em>、<strong>、<label>

设置display:block就是将元素显示为块级元素。如下代码就是将内联元素a转换为块状元素,从而使a元素具有块状元素特点。

a{display:block;}

块级元素特点:

1、每个块级元素都从新的一行开始,并且其后的元素也另起一行。

2、元素的高度、宽度、行高以及顶和底边距都可设置。

3、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。

块状元素也可以通过代码display:inline将元素设置为内联元素。如下代码就是将块状元素div转换为内联元素,从而使div元素具有内联元素特点。

行内元素会在一条直线上排列(默认宽度只与内容有关),都是同一行的,水平方向排列

块级元素各占据一行(默认宽度是它本身父容器的100%(和父元素的宽度一致),与内容无关),垂直方向排列。块级元素从新行开始,结束接着一个断行。

4、关于过度

CSS3 过渡是元素从一种样式逐渐改变为另一种的效果。

要实现这一点,必须规定两项内容:

  • 指定要添加效果的CSS属性
  • 指定效果的持续时间。

属性变化放在 常规状态会有来回的感觉

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/228928.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解——快速排序

目录 &#x1f4a1;基本思想 &#x1f4a1;基本框架 &#x1f4a1;分割方法 ⭐Hoare版本 ⭐挖坑法 ⭐前后指针法 &#x1f4a1;优化方法 ⭐三数取中法 ⭐小区间内使用插入排序 &#x1f4a1;非递归实现快速排序 &#x1f4a1;性能分析 &#x1f4a1;基本思想 任取待排…

【代码随想录】算法训练计划51

dp 1、309. 买卖股票的最佳时机含冷冻期 题目&#xff1a; 给定一个整数数组prices&#xff0c;其中第 prices[i] 表示第 i 天的股票价格 。​ 设计一个算法计算出最大利润。在满足以下约束条件下&#xff0c;你可以尽可能地完成更多的交易&#xff08;多次买卖一支股票&…

CSS中控制元素水平布局的七个属性

元素的水平方向的布局 元素在其父元素中水平方向的位置由一下几个属性共同决定 margin-left border-left padding-left width padding-right border-right margin-right 一个元素在其父元素中&#xff0c;水平布局必须要满足以下…

【redis,nosql】redis键值数据库

什么是redis数据库 Redis is an open source, in-memory data structure store used as a database, cache, message broker, and streaming engine. 存储模式 字符串&#xff08;String&#xff09; Redis strings store sequences of bytes, including text, serialize…

webpack的配置与优化

webpack 启动命令配置 在package.json中配置启动命令 除了 npm start 外 运行dev和build都需要加 run 例&#xff1a;npm run build "scripts": {"start": "npm run dev", //启动开发模式 简化命令"dev": "npx webpack serve -…

力扣刷题-二叉树-二叉树左叶子之和

404 左叶子之和 给定二叉树的根节点 root &#xff0c;返回所有左叶子之和。 示例 1&#xff1a; 输入: root [3,9,20,null,null,15,7] 输出: 24 解释: 在这个二叉树中&#xff0c;有两个左叶子&#xff0c;分别是 9 和 15&#xff0c;所以返回 24 思路 迭代法 迭代法理解…

【谭浩强C语言:前八章编程题(多解)】

文章目录 第一章1. 求两个整数之和(p7) 第二章2. 求三个数中的较大值&#xff08;用函数&#xff09;(p14、p107)3.求123...n(求n的阶乘&#xff0c;用for循环与while循环)(P17)1.循环求n的阶乘2.递归求n的阶乘(n< 10) 4.有M个学生&#xff0c;输出成绩在80分以上的学生的学…

C++11——可变参数模板

可变参数模板可以接收不定数量的参数&#xff0c;比如printf函数就是这样&#xff0c;可以传任意数量的参数 template<class ...Args> void test(Args... args) {//... } Args是一个函数模板参数包&#xff0c;args函数形参参数包 如何获取参数包的值 1.递归获取 void…

【算法】【动规】摆动序列

跳转汇总链接 &#x1f449;&#x1f517;动态规划算法汇总链接 2.2 摆动序列 &#x1f517;题目链接 如果连续数字之间的差严格地在正数和负数之间交替&#xff0c;则数字序列称为 摆动序列 。第一个差&#xff08;如果存在的话&#xff09;可能是正数或负数。仅有一个元素或…

Qt容器QStackedWidget小部件堆栈

# QStackedWidget QStackedWidget是Qt框架中的一个控件,用于在同一区域显示多个子控件,只有一个子控件可见。以下是一些常用的QStackedWidget函数: addWidget(QWidget *widget):向QStackedWidget中添加一个子控件。 insertWidget(int index, QWidget *widget):在指定位置…

外包干了3个月,技术退步明显。。。

先说一下自己的情况&#xff0c;本科生生&#xff0c;19年通过校招进入广州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

LangChain学习三:链-实战

文章目录 上一节内容&#xff1a;LangChain学习二&#xff1a;提示-实战&#xff08;下半部分&#xff09;学习目标&#xff1a;明白链是什么&#xff1f;有哪些&#xff1f;怎么用&#xff1f;学习内容一&#xff1a;介绍学习内容二&#xff1a;有那些学习内容三&#xff1a;实…

C++初阶-queue的使用与模拟实现

queue的使用与模拟实现 一、queue的介绍和使用二、queue的使用三、queue的模拟实现3.1 成员变量3.2 成员函数3.2.1 push入队列3.2.2 pop出队列3.2.3 返回队头数据3.2.4 返回队尾数据3.2.5 返回队列的大小3.2.6 判断队列是否为空 四、完整代码4.1 queue.h4.2 test.h 五、deque的…

Linux:TCP 序列号简介

文章目录 1. 前言2. 什么是 TCP 序列号&#xff1f;3. TCP 序号 的 初始值设置 和 后续变化过程3.1 三次握手 连接建立 期间 客户端 和 服务端 序号 的 变化过程3.1.1 客户端 socket 初始序号 的 建立3.1.2 服务端 socket 初始序号 的 建立3.1.3 客户端 socket 接收 服务端 SAC…

vue使用el-tag完成添加标签操作

需求&#xff1a;做一个添加标签的功能&#xff0c;点击添加后输入内容后回车可以添加&#xff0c;并且标签可以删除 1.效果 2.主要代码讲解 鼠标按下后触发handleLabel函数&#xff0c;根据回车的keycode判断用户是不是按下的回车键&#xff0c;回车键键值为13&#xff0c;用…

【一种用opencv实现高斯曲线拟合的方法】

背景&#xff1a; 项目中需要实现数据的高斯拟合&#xff0c;进而提取数据中标准差&#xff0c;手头只有opencv库&#xff0c;经过资料查找验证&#xff0c;总结该方法。 基础知识&#xff1a; 1、opencv中solve可以实现对矩阵参数的求解&#xff1b; 2、线的拟合就是对多项…

leetcode:457. 环形数组是否存在循环

环形数组是否存在循环 存在一个不含 0 的 环形 数组 nums &#xff0c;每个 nums[i] 都表示位于下标 i 的角色应该向前或向后移动的下标个数&#xff1a; 如果 nums[i] 是正数&#xff0c;向前&#xff08;下标递增方向&#xff09;移动 |nums[i]| 步 如果 nums[i] 是负数&…

【23-24 秋学期】NNDL 作业11 LSTM

目录 习题6-4 推导LSTM网络中参数的梯度&#xff0c; 并分析其避免梯度消失的效果 习题6-3P 编程实现下图LSTM运行过程 &#xff08;一&#xff09;numpy实现 &#xff08;二&#xff09;使用nn.LSTMCell实现 &#xff08;三&#xff09; 使用nn.LSTM实现 总结 &#x…

dysmsapi

dysmsapi DY - SMS - API 短信服务接口 短信服务_SDK中心-阿里云OpenAPI开发者门户 <!-- 阿里dayu sms api短信群发接口 --><!-- https://mvnrepository.com/artifact/com.aliyun/dysmsapi20170525/2.0.24 --><dependency><groupId>com.aliyun&l…

Python学习笔记第七十四天(OpenCV安装)

Python学习笔记第七十四天 OpenCV安装安装Python安装OpenCV简单使用OpenCV 后记 OpenCV安装 在Windows系统下&#xff0c;安装Python和OpenCV可以按照以下步骤进行&#xff1a; 安装Python 下载Python&#xff1a;在Python官网下载最新的Python安装包&#xff0c;建议选择与…