图片加载防闪动的CSS方法

2023-11-09

图片闪动:在移动端设置图片布局时,图片使用自适应的方式,其父元素的高度是被图片高度撑开的。在图片加载前,父元素高度为0;加载后,父元素高度为图片高度。这样的过程会造成视觉上的闪烁,影响用户体验。
因此,在用图片撑开父元素高度之前,就需要给父元素设置一个高度。这个高度不能写成定值,否则无法适配移动端各种尺寸。此时,可以利用padding百分比的方式,来将父元素作为一个占位符,提前撑开高度,以便于图片加载后放入父元素中。这样的思路而言,图片元素必须是绝对定位(绝对定位相对于父元素的边框来定位),而父元素的padding-top或者padding-bottom则为百分比(具体的百分比与图片的宽高比例相关,如100%则是1:1)。
padding百分比是以父元素的宽度做基准的(horizon-flow)或者高度做基准(vertical-flow)
以图片宽高1:1为例,如下:
HTML代码如下:

<div class="content">
	<div class="picWrapper">
		<img src="url" />
	</div>
</div>

CSS代码如下:

.picWrapper {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 100%;
}
.picWrapper img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图片加载防闪动的CSS方法 的相关文章

  • GC日志分析

    JVM的GC日志的主要参数包括如下几个 XX PrintGC 输出GC日志 XX PrintGCDetails 输出GC的详细日志 XX PrintGCTimeStamps 输出GC的时间戳 以基准时间的形式 XX PrintGCDateS
  • 阿里云平台接入python版

    物联网基于python云平台的接入 文章目录 物联网基于python云平台的接入 1 设计目的 2 功能要求和关键问题 2 1 系统功能描述 2 2复杂工程问题分析 3 系统整体框架设计 4 模块的设计和实现 4 1 阿里云基础和设计 4
  • 22个开源的PHP框架

    PHP 是一个被广泛使用的来进行Web开发的脚本语言 虽然有很多其它可供选择的Web开发语言 像 ASP 和Ruby 但是PHP是目前为止世界上最为流行的 那么 是什么让PHP如此流行 PHP 如此之流行是因为比起别的语言来 它更容易学习
  • 后端程序员必备:mysql数据库相关流程图/原理图

    前言 整理了一些Mysql数据库相关流程图 原理图 做一下笔记 大家一起学习 1 mysql主从复制原理图 mysql主从复制原理是大厂后端的高频面试题 了解mysql主从复制原理非常有必要 主从复制原理 简言之 就三步曲 如下 主数据库有
  • DCEL数据结构

    文章目录 前言 DCEL介绍 DCEL优势 DCEL数据结构实现 Point Vertex HalfEdge Face Reference 前言 虽然https blog csdn net baidu 34931359 article de
  • 探索无限可能的教育新领域,景联文教育GPT题库开启智慧教育新时代!

    随着人工智能技术的快速发展 教育领域也将迎来一场革命性的变革 景联文科技是AI基础数据行业的头部企业 近期推出了一款高质量教育GPT题库 景联文科技高质量教育GPT题库采用了先进的自然语言处理技术和深度学习算法 可以实现对各类题目的智能识别
  • UIIAlertController的自动消失

    自动消失的思路就是添加一个计时器 设置计时器的时间 让UIAlertController 通过dismiss消失 UIAlertController alert UIAlertController alertControllerWithTi
  • css知识学习系列(6)-每天10个知识点

    目录 1 CSS中的 box sizing 属性与 border 属性有什么关系 2 在CSS中 如何使用 calc 函数进行计算 有什么使用技巧 3 在CSS中 如何使用 import 引入外部样式表 有哪些注意事项 4 Flexbox和
  • C# 邮件发送

    一 准备工作 1 要想编写一个发送邮件的小工具 首先得了解以下内容 收件人 这封邮件的接收人 邮件发送者沟通交流的对象 抄送 这封邮件的接收人 邮件发送者希望被抄送者了解邮件内容 密件抄送 这封邮件的接收人 与抄送的唯一区别就是它能够让各个
  • flutter 弹窗队列封装,里面的自定义回调值得学习

    参考 里面的这里回调TaskCallback Function学习一下 挺重要的 import dart async 自定义回调类型 typedef TaskCallback void Function bool success dynam
  • 【异常】IDEA打开配置文件*.properties乱码

    一 异常内容 二 异常说明 properties配置文件的编码格式 通常情况下properties的默认编码格式为ISO 8859 1 但是这种文件往往是不可读的 因此需要进行编码格式的转换 三 异常解决 更改properties的编码格式
  • C4996 ‘strncpy‘: This function or variable may be unsafe. Consider using strncpy_s instead. To disa.

    C4996 strncpy This function or variable may be unsafe Consider using strncpy s instead To disa 原因 解决方案 注意事项 原因 strncpy进行
  • 下次造轮子前先看看现有的轮子吧

    转自 http www cppblog com merlinfang archive 2014 12 26 209311 aspx 下次造轮子前先看看现有的轮子吧 值得学习的C语言开源项目 1 Webbench Webbench是一个在li
  • 物理组件oracle,Oracle入门《Oracle介绍》第一章1-1

    1 Oracle 简介 a 对象关系型的数据库管理系统 ORDBMS b 在管理信息系统 企业数据处理 因特网及电子商务等领域使用非常广泛 c 在数据安全性与数据完整性控制方面性能优越 d 跨操作系统 跨硬件平台的数据互操作能力 2 Ora
  • C#中的数组

    C 中的数组 C 数组 Array foreach 索引 null 地址 http www cnblogs com txw1958 archive 2013 01 11 csharp array html 数组概述 数组是一种数据结构 它包
  • VC工程中几中后缀名文件的意义

    opt 工程关于开发环境的参数文件 如工具条位置等信息 aps AppStudio File 资源辅助文件 二进制格式 一般不用去管他 clw ClassWizard信息文件 实际上是INI文件的格式 有兴趣可以 研究 一下 有时候Clas
  • 拜小白教你Qt5.8.0+OpenCV3.2.0配置教程(详细版)

    本机环境 Windows 64位 Qt 5 8 0 OpenCV3 2 0 CMake3 8 2 最后结果 亲测可用 第0部分 前期准备 CMake官网下载地址 https cmake org download CMake安装教程请查看 拜
  • C语言的各类运算概述

    C语言的各类运算概述 C语言的一个很有用的特性就是支持按位布尔运算 位级运算 对char数据类型表达式求值的例子 逻辑运算 逻辑运算符 和 分别对应于命题逻辑中的OR AND和NOT 运算 逻辑运算认为所有非零的参数都表示TRUE 而参数0
  • Vue+Element-ui实现表单验证

    文章目录 效果 template js实现 校验通过的实现效果 效果 校验效果 template div div

随机推荐

  • [云原生专题-31]:K8S - 核心概念 - 大规模pods编排工具:工作负载(workloads)资源及其八大特性

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122795902 目录 前言 第1章
  • C++11 deque用法总结(整理)

    目录 1 deque 简介 1 1 deque的创建和初始化 2 deque成员函数使用 2 1 有关增加元素的函数方法 2 2 有关删除元素的函数方法 2 3 iterator函数 遍历 2 4 其他有关函数 1 deque 简介 deq
  • 用CSS画一个三角形

    用边框border去画 让左 下透明transparent 效果如下图所示 div width 0px height 0px border left 100px solid transparent border bottom 100px s
  • Android 高级面试题及答案

    一 性能优化 1 如何对 Android 应用进行性能分析 android 性能主要之响应速度 和UI刷新速度 可以参考博客 Android系统性能调优工具介绍 首先从函数的耗时来说 有一个工具TraceView 这是androidsdk自
  • docker--知识点提炼

    1 docker命令 docker服务 info version 容器 ps run exec top stats logs port rm stop start kill inspect cp ctrl p ctrl q 镜像 login
  • Docker容器内Superset汉化

    一 进入容器将config py文件中的BABEL DEFAULT LOCALE en 改为BABEL DEFAULT LOCALE zh 进行简单汉化 Setup default language BABEL DEFAULT LOCALE
  • Ubuntu安装idea

    下载 进入https www jetbrains com idea download section linux 选择Ultimate版本 点击下载 我下载的是这个版本 https download jetbrains com cn ide
  • 通过配置NFS使Ubuntu和海思3559A板子共享目录

    之前在Ubuntu和海思3559A板子之间来回拷贝文件都是用的scp命令 不是很方便 这里通过配置NFS来实现它们之间共享目录 操作步骤如下 1 在Ubuntu上安装NFS 执行以下命令 执行结果如下 sudo apt get instal
  • An attempt was made to call a method that does not existThe attempt was made from following location

    Dubbo和zookeeper整合springboot报错 An attempt was made to call a method that does not exist The attempt was made from the fol
  • 利用XMLHttpRequest同步和异步下载二进制文件的解决方案。

    在XMLHttpRequest2里支持二进制数据的下载了 现分别以同步和异步两种方式分别介绍 异步的方式下载 xmlRequest open GET 0 jpg true xmlRequest responseType blob 这里是关键
  • Android Studio的APP目录下的build.gradle的配置说明

    Build gradle属性说明 声明是Android程序 apply plugin com android application android 程序在编译的时候会检查lint 有任何错误提示都会停止build lintOptions
  • 集合框架知识总汇之(list集合)

    目录 编辑 1 UML 统一建模语 3 List集合 3 1特点 3 2遍历方式 3 3List优化 初始容量10 负载因子1 5 3 4LinkedList 队列 堆栈 3 5如何对Arraylist进行去重处理 面试常问题 1 Coll
  • Django4.0+使用rest_framework_jwt的问题

    问题描述 python版本 3 10 Django版本 4 1 djangorestframework jwt版本 1 11 0 在写jwt认证功能时 发现run的时候会报以下错误 from django utils translation
  • VUE 自身页面跳转自身页面

    先说一下要实现的功能 点击原案件 要回到原案件 但是原案件页面和现在的页面一样 也就是自身跳转自身页面 路由地址不变 使用vue祖传的push 方法来挑转的话 你会发现可以跳转过去 但是页面会刷新 不会触发vue生命周期函数 方法一 thi
  • [转]No response for the toolbars in BEx Analyzer 2004s

    Summary Symptom After installing the frontend either from the CD or through applying the frontend support package or the
  • 2022年蓝桥杯省赛 C/C++ A组B题灭鼠先锋题解

    问题描述 本题为填空题 只需要算出结果后 在代码中使用输出语句将所填结果输出即可 灭鼠先锋是一个老少咸宜的棋盘小游戏 由两人参与 轮流操作 灭鼠先锋的棋盘有各种规格 本题中游戏在两行四列的棋盘上进行 游戏的规则为 两人轮流操作 每次可选择在
  • 《UNIX网络编程》卷一第四章学习笔记

    UNIX网络编程 卷一第四章学习笔记 4 2 socket函数 include
  • 2023华为OD机试真题【计算快递业务主站点/回溯法/深度优先搜索】

    题目描述 快递覆盖的范围有N的站 如果A和B都可以用来中转 我们就称A B站可达 如果A B可达 B C可达 则A C达 我们现在有N个编号 如果s i j 1 表示i j可达 如果s i j 0 表示i j不可达 现用二维数组给定N个站点
  • 使用python爬取微信公众号文章

    一 背景 有时候看到某一个微信公众号中的文章 觉得写的非常不错 有种当时就想把该公众号所有的文章都看完的冲动 但是使用手机看不是特别方便 就想把文章全部下载下来到电脑上面看 二 爬虫实现步骤 使用python爬取微信公众号文章 总共分为如下
  • 图片加载防闪动的CSS方法

    图片闪动 在移动端设置图片布局时 图片使用自适应的方式 其父元素的高度是被图片高度撑开的 在图片加载前 父元素高度为0 加载后 父元素高度为图片高度 这样的过程会造成视觉上的闪烁 影响用户体验 因此 在用图片撑开父元素高度之前 就需要给父元