IMAGINE'S BLOG IMAGINE'S BLOG
首页
  • 原生JS

    • JavaScript
  • 前端框架扩展

    • Vue
    • React
    • UI组件库
  • HTML
  • CSS
  • 浏览器
  • 分类
  • 标签
  • 归档
  • 技术文档
  • GitHub相关
  • Nodejs
关于
  • 网站
  • 友情链接
GitHub (opens new window)

peng

平平无奇的web前端开发一枚
首页
  • 原生JS

    • JavaScript
  • 前端框架扩展

    • Vue
    • React
    • UI组件库
  • HTML
  • CSS
  • 浏览器
  • 分类
  • 标签
  • 归档
  • 技术文档
  • GitHub相关
  • Nodejs
关于
  • 网站
  • 友情链接
GitHub (opens new window)
  • HTML

  • CSS

    • CSS教程和技巧收藏
    • flex布局语法
    • flex布局案例-基础
    • flex布局案例-骰子
    • flex布局案例-圣杯布局
    • flex布局案例-网格布局
    • flex布局案例-输入框布局
    • CSS3之transition过渡
    • CSS3之animation动画
    • 「布局技巧」图片未加载前自动撑开元素高度
    • 文字在一行或多行时超出显示省略号
    • 从box-sizing属性入手,了解盒子模型
    • css水平垂直居中
    • 如何根据系统主题自动响应CSS深色模式
    • 「css技巧」使用hover和attr()定制悬浮提示
    • CSS给table的tbody添加滚动条
    • 常用的一些CSS样式
  • 页面杂谈
  • CSS
peng
2020-02-22

「布局技巧」图片未加载前自动撑开元素高度

# 「布局技巧」图片未加载前自动撑开元素高度

在移动端开发中,有一些元素是根据图片高度来自动撑开的 ,高度不能写死(如轮播图的外层元素)。在网络较慢的情况下,图片加载需要一些时间,此时该元素的高度没有被撑开,在网页布局上会有一些不想看到的效果。 这种情况我们可以设置如下样式来设置该元素的高度:

.wrapper
  overflow hidden
  width 100%
  height 0
  padding-bottom 26.66% // 这个数值是图片的高宽比,即 高/宽
  background #eee
1
2
3
4
5
6

上面代码中,padding-bottom 的取值是图片的高宽比(即,高/宽),它会根据 width值的26.66%计算,最终元素的高度会和图片加载完成后的高度一致。

也可以使用vw的方法,但在一些浏览器可能有兼容性问题:

.wrapper
  width 100%
  height 26.66vw
  background #eee
1
2
3
4

vw,viewpoint width,视窗宽度,1vw=视窗宽度的1%

vh,viewpoint height,视窗高度,1vh=视窗高度的1%

更多 CSS单位 (opens new window)。

#CSS
上次更新: 2022/09/05, 11:01:59
CSS3之animation动画
文字在一行或多行时超出显示省略号

← CSS3之animation动画 文字在一行或多行时超出显示省略号→

最近更新
01
Axios 封装
09-06
02
MySQL数据库常用操作
09-06
03
解决element表格数据量过大导致页面渲染缓慢、卡顿问题
09-06
更多文章>
Theme by Vdoing | Copyright © 2020-2024 peng | IMAGINE
image | imgloc.com
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式