前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >css中如何做到容器按比例缩放

css中如何做到容器按比例缩放

作者头像
IMWeb前端团队
发布于 2019-12-03 09:55:47
发布于 2019-12-03 09:55:47
1.7K00
代码可运行
举报
文章被收录于专栏:IMWeb前端团队IMWeb前端团队
运行总次数:0
代码可运行

本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载

在说容易按比例缩放前,我们先说下图片按比例缩放。

对于图片,默认只设置图片的一个宽或高,那么另一个值就会按照图片真实比例缩放,如

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<img class="demo1" src="http://placehold.it/200x150" alt="">
<img class="demo2" src="http://placehold.it/400x300" alt="">

.demo1{
  width: 100px;/* 只设置宽度,根据等比例缩放得到高度为75px */
}
.demo2{
  height: 150px; /* 只设置高度,根据等比例缩放得到宽度为200px */
}

图片因为本身存在宽高比,所以设置一个值,另一个值自动也就根据真实的比例对应上,但是如果是视频呢?

一般在响应式中,我们会要求视频的宽高比为16:9或4:3,这么一来就比较头大了。当用户改变浏览器宽度的时候(改变高度不考虑),视频的宽度变了,那么高度也得根据我们要求的16:9或4:3改变。

这里老外提供了一个很巧的方案:Creating Intrinsic Ratios for Video

核心思想为:提供一个容器,设置容器的高度为0,再设置padding-bottom为56.25%(因为padding的百分比是按照容器宽度计算的,所以由padding来撑开容器高度,而不是height,保证了容器的宽高比例),最后设置视频绝对定位,其宽高为容器的100%

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.wrap{
    height: 0;
    padding-bottom: 56.25%; /* 16:9 */
    position: relative;
    width: 100%;
}
.wrap .video{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

根据上述思想,我们再将其扩展下,应用到其他地方,如:

这是一个移动端页面的一部分,要求全屏里面正好三张图片,左右图片宽度是相等的,第一个图片和第三个图片下面要对齐,图片之间的间距为10px。鉴于移动端的屏幕大小不等,所以使用定宽不合适。

详细请参考容器等比缩放demo

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-05-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【CSS】318- CSS实现宽高等比自适应容器
在最近开发移动端页面,遇到这么一个情况:当页面宽度 100% 时,高度为宽度一半,并随手机宽度变化依然是一半。
pingan8787
2019/08/19
1.5K0
【复习】CSS实现宽高等比自适应容器
在最近开发移动端页面,遇到这么一个情况:当页面宽度 100% 时,高度为宽度一半,并随手机宽度变化依然是一半。
pingan8787
2019/08/15
1.8K0
面试官:CSS如何实现固定宽高比?
对于这个问题,你可能还没有过相关需求,或者还没有在面试的时候被问到过,但是歪马相信你终将有需要。
歪马
2020/04/07
8.2K0
面试官:CSS如何实现固定宽高比?
[老法新用]使用padding-top:(percentage)实现响应式背景图片
处理响应式布局中背景图片的简单方法是等比例缩放背景图片。我们知道宽度设为百分比的  <img> 元素,其高度会随着宽度的变化自动调整,且其宽高比不变。如果想在背景图片中实现同样的效果,我们必须先解决如何保持HTML元素的宽高比。
Jace
2018/08/01
1.4K0
[老法新用]使用padding-top:(percentage)实现响应式背景图片
理解CSS3中的background-size(对响应性图片等比例缩放)[通俗易懂]
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说理解CSS3中的background-size(对响应性图片等比例缩放)[通俗易懂],希望能够帮助大家进步!!!
Java架构师必看
2022/02/10
3.3K0
理解CSS3中的background-size(对响应性图片等比例缩放)[通俗易懂]
css设计中的不变与可变
如果重构分里子与面子的话,那么html应该是负责里子的,而css就是负责面子了。在上篇html结构的拆与合说了html之后,我们继续来说下css,这次我们从可变与不变的角度分析。
IMWeb前端团队
2019/12/03
7460
css设计中的不变与可变
现代图片性能优化及体验优化指南 - 缩放精细化展示及避免布局偏移、拉伸
图片资源,在我们的业务中可谓是占据了非常大头的一环,尤其是其对带宽的消耗是十分巨大的。
Sb_Coco
2023/03/01
1.3K0
现代图片性能优化及体验优化指南 - 缩放精细化展示及避免布局偏移、拉伸
移动端重构实战系列6——icon与图片
IMWeb前端团队
2018/01/08
9090
Hugo 图片懒加载和自适应 CSS 图片占位
对于未对中国大陆优化的博客站点而言,图片懒加载几乎是必备的功能,它能够有效提高页面的首屏速度。静态站点的懒加载方案有很多,但都必然会带来布局偏移的问题,影响页面的 CLS 分数。
Shiroka
2022/05/29
2.2K0
Hugo 图片懒加载和自适应 CSS 图片占位
【移动端网页布局】移动端网页布局基础概念 ⑥ ( 背景图像缩放 | 不等比例拉伸 - 同时设置宽高值 | 等比例拉伸 - 设置宽度 / cover / contain 值 )
盒子模型 的 背景图片尺寸 是通过 background-size 属性 设置的 , 语法如下 :
韩曙亮
2023/04/24
1.1K0
【移动端网页布局】移动端网页布局基础概念 ⑥ ( 背景图像缩放 | 不等比例拉伸 - 同时设置宽高值 | 等比例拉伸 - 设置宽度 / cover / contain 值 )
uni-app&微信小程序图片组件的等比例缩放和自适应裁切显示
微信小程序的组件和普通的 HTML 有所不同,比如 HTML 的 div 在小程序里面是 view ,HTML 的 span 在小程序里是 text 。
德顺
2021/03/23
6.8K0
Android Material UI控件之ShapeableImageView
你有使用过Material中的UI控件吗?为什么要使用它们,相对于原来的控件优势在哪里?   相信你看到这篇文章也会有所疑问,第一个问题就不用说了,那么从第二问题开始回答,Android官方为开发者提供了许多丰富的UI控件,Material 组件就是包含了这些控件的一套工具,多数时候使用它可以满足我们日常开发UI的需求,提高效率。优势就在于它比原来的控件更加的强大,比如说我们平时要是像显示一个圆形的头像,需要怎么做呢?你可能会使用第三方库,Glide或者CircleImageView等一些开源库,或者你会自定义ImageView来实现,那么如果我告诉你Material 中的ImageView可以不需要自定义和使用第三方库就能够实现圆形图片或其他一些形状的图片呢?这样是否证明它更强大?是否能提高你的开发效率呢?听了这么多的废话远不如实践得劲,其实我也是这么想的,但是我得让你知道为什么才行,这才是写文章的目的。下面是正文了。
晨曦_LLW
2020/10/26
2.4K0
Android Material UI控件之ShapeableImageView
使用css设置div等比例缩放高宽
在响应式开发中,有一些元素需要按等比例进行显示,比如说一个上传图片的区域,我们需要严格限制上传区域的比例为3:1,上传完成后的预览图宽高均为100%,才能保证用户上传后看到上传的图片是否合乎比例,是否在实际应用时会产生变形或裁剪的问题。那么此时就需要在适应不同宽度的屏幕中进行等比例缩放div区域。
OECOM
2020/07/01
4.6K0
H5活动宣传页通用布局技术解决方案
IMWeb前端团队
2018/01/08
1.8K0
H5活动宣传页通用布局技术解决方案
49个常用的CSS代码片段,建议整理收藏
text-shadow 为网页字体添加阴影,通过对text-shadow属性设置相关的属性值。
前端达人
2021/07/16
2.2K0
图像裁剪库Cropper.js的学习使用
Cropper.js 是一个轻量级的 JavaScript 插件,用于在网页中实现图像裁剪功能。它提供了一个用户友好的界面,允许用户选择和裁剪图像,支持多种配置选项和功能。以下是一些关键特点:
心安事随
2024/08/05
8970
图像裁剪库Cropper.js的学习使用
web图片响应式自适应结合懒加载的最佳方案
在响应式布局中,通常图片自适应是没法带上宽度和高度的,或者是需要使用JavaScript来计算出它的合适宽高,而且在使用懒加载时,我们会默认给一个占位图片,一个占位图片在各种不同宽高的图片里面,是会严重变形,有没有更好的处理方法呢?
前端开发博客
2020/11/04
1.3K0
web图片响应式自适应结合懒加载的最佳方案
九宫格布局
高考活动页面需要在一个页面容器中,实现一个两行三列宽度自适应缩放,且图片等比例缩放,随着浏览器宽度进行自适应缩放的布局。 中间的图片需要自适应,随着页面宽度的变化,三等分缩放,图片等比例缩放。页面地址
Tiffany_c4df
2019/09/04
1.8K0
九宫格布局
【面试题】CSS知识点整理(附答案)
css引入伪类和伪元素概念是为了格式化文档树以外的信息。伪类和伪元素是用来修饰不在文档树中的部分。
木子星兮
2020/07/17
1.6K0
【面试题】CSS知识点整理(附答案)
多栏布局与JS实现瀑布流
css3属性之多栏布局与JS实现瀑布流    背景:之前打算自己总结一下flex布局的知识点,发现自己无从下手,原因在何处:我反思了一下,其实原因很简单,使用的次数少,更多的时间使用了百分比,浮
okaychen
2018/01/05
3K0
多栏布局与JS实现瀑布流
推荐阅读
相关推荐
【CSS】318- CSS实现宽高等比自适应容器
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验