css - 如何在 CSS 中使用背景图像平滑地无限放大和缩小
问题描述
背景图像在制作动画时不平滑(某种闪烁),我无法使其从图像中心缩放。
这是我正在尝试制作的个人网站。
*{margin: 0;padding: 0;}
body
{
background-color: #0C090A;
background-image: url(../abstract-bg.png);
animation: zoom 30s infinite;
-webkit-animation: zoom 30s infinite;
}
@keyframes zoom {
0% {
background-size: 100%;
}
50% {
background-size: 105%;
}
100% {
background-size: 100%;
}
}
我想让背景图像(1920*1080)慢慢缩放到原始大小的 105%(或类似的大小),然后回到 100%。另外,如果可能的话,让它从中心缩放,而不是左上角。感谢那些可以提供帮助的人。
解决方案
是的,当然你可以:) 只需添加
background-position:center center;
background-repeat:no-repeat;
在正文 css 中并添加
html{
height: 100%;
}
完整的CSS代码:
* {
margin: 0;
padding: 0;
}
html {
height: 100%;
}
body {
background-color: #0C090A;
background-image: url(https://images.pexels.com/photos/556416/pexels-photo-556416.jpeg);
animation: zoom 30s infinite;
-webkit-animation: zoom 30s infinite;
background-position: center center;
background-repeat: no-repeat;
}
@keyframes zoom {
0% {
background-size: 100%;
}
50% {
background-size: 150%;
}
100% {
background-size: 100%;
}
}
您可以测试代码: https ://playcode.io/358401
推荐阅读
- javascript - 鼠标到达末尾时自动滚动导航栏列表
- python - 无法训练 rasa 聊天机器人,因为它显示张量流错误
- vue.js - 在特定索引处从 Vuex 获取对象
- java - 如何将使用Oracle数据库页面的一个jsp中显示的名称值获取到另一个jsp页面
- python - Python 套接字 ConnectionRefusedError 但仅在不在 127.0.0.1 上时
- docusignapi - 无法使用 DocuSign 创建信封,API PARTNER_AUTHENTICATION_FAILED
- regex - 使用 REGEX 按逗号关键字选择逗号
- gremlin - 在遍历中访问和比较存储边的属性
- c# - .net 核心中未经授权用户的 AccessDenied 页面,returnUrl 不正确
- javascript - 为什么我不能在 populateViewHolder 中显示 FirebaseRecyclerAdapter?