如何平滑过渡 CSS 背景图片?

2024-04-29

主要的解决方案是:

“只需抛出一个加载屏幕,直到页面加载完毕”。

但我的目标是构建能够快速呈现基础知识的页面,无需加载屏幕,然后在图像和精美功能准备就绪时进行转换。所以我会等到它加载完毕,然后淡入。或者我会加载一个非常低分辨率的版本,然后在准备好时淡入高分辨率。

我还没有弄清楚这种做法的一个方面是如何使用背景图像来做到这一点。

如何实现背景图片平滑淡入的效果?

我愿意使用:

  • JavaScript
  • JQuery
  • 任何现代 JQuery 库
  • CSS 技巧/“黑客”

但我想避免:

  • 使用覆盖元素并将其淡入顶部。

正如 @dandavis 的评论中所指出的,实际上有一个 CSS 过渡属性:background-image。

解决方案,利用 CSS 背景过渡属性:

  1. 创建两个背景图像相同尺寸的:一种是透明的,一种是有意的。 (如果你不把它们做成相同的尺寸,你会得到这样的效果! http://jsfiddle.net/9Nu7Z/8/);

  2. use transition: background-image 1s造成过渡效果

  3. 使用 Javascript 预加载图像并在准备好后重置背景图像。 CSS 会处理剩下的事情。

显着的局限性

  • 这不允许background-size操纵(这会产生非常奇怪的效果 http://jsfiddle.net/9Nu7Z/1/).

  • 如前所述,图像必须具有相同的尺寸。


工作示例 http://jsfiddle.net/9Nu7Z/7/

var image = new Image();
image.onload = function () {
        $(".element").css("background-image", "url('" + image.src + "')");
}

image.src = "https://c1.staticflickr.com/3/2439/3728897793_ff1c78c5d9.jpg"; //image to be transitioned to
html{
    width:100%;
    height:100%;
}
body{
    width:100%;
    height:100%;
    padding:0px;
    margin:0px;
}
.element{
    width:100%;
    height:100%;
    background-image:url('http://i.imgur.com/HRV3DsM.jpg');
    -webkit-transition: background-image 5s;
}
<div class="element">
</div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何平滑过渡 CSS 背景图片? 的相关文章

  • 如何使用 poedit 解析 Timber(树枝)模板并检测要翻译的引用字符串

    我想用 poedit 解析 Timber 的树枝模板 并且需要翻译引用的内容 问题是我找不到不跳过引用内容的解析器 Example
  • Angularjs - 将 True/False 显示为 Yes/No

    有没有一种简单的方法可以将真 假值显示为是 否 我正在从数据库检索包含以下内容的 JSON 对象 对象 WithCertification true 这是 HTML 有认证 elem WithCertification 正在显示这个 认证真
  • 将字符串转换为正确的 URI 格式?

    有没有简单的方法可以将电子邮件地址字符串转换为正确的 URI 格式 Input http mywebsite com validate email 3DE4ED727750215D957F8A1E4B117C38E7250C33 email
  • 在移动网站中处理 iPhone 事件(如向左滑动)

    iPhone 浏览器是否有可以使用 Javascript 挂钩的特殊事件 例如 如果用户向左滑动 我想执行某个操作 如果有类似的活动 很高兴看到所有这些活动的参考 理想情况下 有一天所有触摸屏移动浏览器都会有一个标准 您可以访问多点触控事件
  • Gmail 和 Google Chrome 12+ 中的“从剪贴板粘贴图像”功能如何工作?

    我注意到一个来自 Google 的博文 http gmailblog blogspot com 2011 06 pasting images into messages just got html其中提到 如果您使用的是最新版本的 Chro
  • 加载背景图像的图像不显示

    我真的很困惑 我正在尝试创建一个带有图标和一些按钮的登陆页面 但我无法设法使我正在使用的背景图像显示出来 即使它是根据 Chrome 的开发工具包加载的 我只有这些行 索引 html div class row div class tryh
  • 如何使用 jest 通过 Promise.all 设置多次提取测试

    我在测试中使用 jest 我正在使用 React 和 Redux 并且执行以下操作 function getData id notify return dispatch gt dispatch anotherFunction Promise
  • 如何更改元素的 CSS 类并在单击时删除所有其他类

    我如何处理 AngularJS 2 中的一种情况 即单击一个元素需要更改其自己的样式 并且如果其他元素具有该样式 则需要将其删除 最好在一个函数中 如同Angular js 如何在单击时更改元素 css 类并删除所有其他元素 https s
  • Rails 中的 PDF 导出

    我需要将包含一些图表的 HTML 页面导出为 PDF 有哪些好的 gem 可以做到这一点 PDFKit http railscasts com episodes 220 pdfkit http railscasts com episodes
  • 我们如何使用 thymeleaf 绑定对象列表的列表

    我有一个表单 用户可以在其中添加任意数量的内容表对象这也可以包含他想要的列对象 就像在 SQL 中构建表一样 我尝试了下面的代码 但没有任何效果 并且当我尝试绑定两个列表时 表单不再出现 控制器 ModelAttribute page pu
  • Onblur 事件在另一个 div 的 onclick 之前触发

    如上所述 我有一个按钮 单击该按钮将打开子菜单 对于子菜单中的每个选项 都有三个元素 我认为实际上还有更多元素 但为了简单起见 将其保留为 3 我将焦点放在子菜单的主 div 白色 框架 上 Onblur 这个 div 然后我隐藏子菜单 这
  • jquery ajax加载后丢失CSS

    大家知道如何解决 load Ajax 请求后的 css 问题吗 例如 如果我想从网页加载 DIV 在我的 Ajax 请求之后 container load path to div div id 我丢失了与该 div 关联的所有 css 和脚
  • CSS 动画自定义属性/变量

    一段时间以来我一直在努力让它发挥作用 关键是内部 div 将具有某种形状 并且可能会不止一个 这就是为什么我使用nth child选择器 这个内部 div 应该显示然后再次隐藏一段时间 问题是 我想在一个动画中为所有 后来的 多个内部 di
  • 媒体查询:如何定位桌面、平板电脑和移动设备?

    我一直在对媒体查询进行一些研究 但我仍然不太明白如何定位特定大小的设备 我希望能够针对台式机 平板电脑和移动设备 我知道会存在一些差异 但如果有一个可用于针对这些设备的通用系统 那就太好了 我发现的一些例子 Mobile only scre
  • Socket.io 与服务器离线连接

    如何检测服务器是否离线或由于其他原因无法连接 我的代码看起来像这样 this socket io connect connectionInfo reconnect false 它不会抛出任何错误 因此 try catch 子句不起作用 Us
  • SlickGrid 回调onRowSelect?

    我想在用户选择表中的一行时添加回调 但我不知道该怎么做 这是我到目前为止所拥有的
  • Angular 停止 Enter 键提交

    I am trying to stop the Enter from submitting my button and rather make it point to another function I tried trapping th
  • JavaScript 正则表达式两个标签之间的多行文本

    我编写了一个正则表达式来从 HTML 中获取字符串 但似乎多行标志不起作用 这是我的模式 我想将文本输入h1 tag var pattern div class box content 5 h1 lt lt h1 gt mi m html
  • JsGrid 将嵌套对象加载到表中

    我正在 Django 中开发一个 Web 项目并使用 jsGrid 我遇到了问题并且找不到解决方案 我有一个嵌套的 JSON 数据 它是通过组合多个数据库表记录创建的 这是我的 JSON count 3 results personnel
  • 角度 4 单击按钮功能未触发

    我正在尝试检查文本输入是否为空或不在角度 4 中 我没有为此使用表单 这只是一个输入字段 当我在下面的按钮中执行 addLocaton 函数时 需要进行检查 我的输入字段

随机推荐

  • exoplayer 中的 CacheDataSource 与 SimpleCache?

    我对 ExoPlayer 及其文档非常困惑 请解释一下我们应该什么目的以及何时使用 CacheDataSource 以及何时使用 SimpleCache CacheDataSource and SimpleCache实现两个不同的目的 如果
  • 在 Android 应用程序中使用 DrawerLayout 时手势不起作用

    我有一个带有单个 Activity 的 Android 应用程序 此活动使用此布局
  • Elasticsearch TransportClient NetworkPlugin NoClassDefFoundError

    我期待将 Elasticsearch 集成到 Spring Boot Web 应用程序中 这是创建传输客户端的配置 Configuration public class ElasticsearchConfig private Transpo
  • Angular2 登录后刷新标题

    因此 我有一个标头组件 根据用户是否登录来显示用户名或 登录 我还有一个登录组件 它执行登录的所有业务逻辑 它们目前没有父 子关系 当用户登录时 除非在浏览器中完成整页刷新 否则标题不会刷新或更改 我在网上进行了大量搜索和阅读 了解实现此目
  • numpy 数组的列表理解 - 不好的做法?

    我想知道以下方法是否会被视为不好的做法 如果是的话 是否有人可以为另一种方法提供一些指导 这是有问题的代码 a np array 1 2 3 4 5 6 b np array 5 5 c np array np multiply a x b
  • JavaScript 验证国际字符的问题

    我们用优秀的jQuery 验证器插件 http bassistance de jquery plugins jquery plugin validation 在 Stack Overflow 上 在将输入提交到服务器之前对输入进行客户端验证
  • R 中的 DataTable,将具有特定值类别的行格式化为百分比

    如果我有一个数据表 并且我的目标是将包含 MONTH Percent Change 的任何行更改为百分比 MONTH YEAR Client Revenue Metric 1 Metric 2 Metric 3 1 MTD 1 2015 C
  • 如何使用python检查youtube中的视频是否已被删除或删除

    我有一个 csv 文件 其中有 1000 个视频链接 我想检查这些视频是否仍然存在或者已从 YouTube 中删除或删除 我怎样才能在Python中做到这一点 请指导一下这个 你可以使用官方 YouTube API https develo
  • 如何在 Spring Kafka 中以编程方式设置 Jsonserializer Type Value 方法

    所以我无法仅使用 yaml 为 JsonSerializer 配置 JavaType 方法 还不确定原因 但与此同时 我如何以编程方式设置它 我在文档中看到了它的代码 但是该代码到底需要在哪里运行 Spring Kafka JsonDese
  • 正方形检测找不到正方形

    我正在使用该程序方块 c在 OpenCV 库的示例中可用 它适用于每个图像 但我真的不明白为什么它不能识别该图像中绘制的正方形 After CANNY After DILATE The RESULT图像 红色 http img267 ima
  • 通过 javascript 按名称引用 HTML 元素(其中带有方括号)

    大家好 我正在尝试根据是否选中复选框或是否从下拉框中选择特定值来隐藏 显示不同的 html 元素 div 等 我想知道是否有人可以帮助我 html 元素是按照此 如下 的方式定义的 我不确定如何通过带有括号的名称来引用它 我正在使用的页面启
  • 使用 jQuery 动态创建并“单击”链接

    我想动态创建一个 a href 元素 然后 单击 它 全部无需修改页面 我正在尝试这个 a href nbsp a click 无济于事 它不是jquery 但它工作得很好 var link document createElement a
  • 概念面无法映射到物体面?

    我使用实体框架和 Db First 方法 我曾经有一个名为 Ranking 的表 我将其映射到带有一些继承的具体类的抽象基类 现在 我最近删除了所有继承 并选择只使用一个名为 Ranking 的具体类 但自从我把它改回来后 我得到以下运行时
  • PyCharm 找不到已安装的软件包:keras

    我在运行 Ubuntu 14 04 的 PC 上安装了 pycharm 2016 1 4 我已经使用安装了 Keras 一个 Python 包 pip install keras和 PyCharmcan找到它before 但它cannot找
  • redis 阻塞直到 key 存在

    我是 Redis 新手 想知道是否有办法能够await get通过它的键来获取值 直到该键存在 最小代码 async def handler data await self fetch key async def fetch key ret
  • 将预训练模型从 tfhub 转换为 tflite

    我正在尝试转换openimages v4 ssd mobilenet v2 https tfhub dev google openimages v4 ssd mobilenet v2 1到 tflite 使用 pip3 install te
  • JavaScript 中的 function($) 是什么意思?

    我意识到 只是命名指向 jQuery 对象的变量的约定 也是 document getElementById 的函数 但是 function 意味着什么吗 编辑 我其实是想说 function jQuery 抱歉造成混乱 但感谢您的回答 一
  • dmesg 和 /var/log/kern.log 之间的区别

    我正在修改kvm模块 并在内核代码中添加了printk语句 运行虚拟机后 printk为我提供了错误地址和有关客户操作系统的其他信息 我需要根据此信息生成统计信息 当我使用 dmesg 时 我只能看到错误地址 在内核空间中 即它们的地址高于
  • 警告:implode() [function.implode]:传递的参数无效

    我收到以下错误 警告 implode function implode 在第 1335 行的 wp content themes mytheme functions php 中传递的参数无效 at function my get tags
  • 如何平滑过渡 CSS 背景图片?

    主要的解决方案是 只需抛出一个加载屏幕 直到页面加载完毕 但我的目标是构建能够快速呈现基础知识的页面 无需加载屏幕 然后在图像和精美功能准备就绪时进行转换 所以我会等到它加载完毕 然后淡入 或者我会加载一个非常低分辨率的版本 然后在准备好时