首页 > 其他分享 >如何让大小不同的图片等比缩放不变形显示在固定大小的div里?写个例子

如何让大小不同的图片等比缩放不变形显示在固定大小的div里?写个例子

时间:2025-01-16 09:25:23浏览次数:1  
标签:容器 缩放 image 50% 大小 div 图片

在前端开发中,等比缩放图片以适配固定大小的 div 容器是一个常见的需求。这通常可以通过 CSS 来实现,确保图片在缩放时不会变形。以下是一个简单的例子,说明如何使用 CSS 来完成这个任务:

  1. HTML 结构

首先,创建一个包含图片的 div 容器。

<div class="image-container">
    <img src="your-image-source.jpg" alt="Description of the image">
</div>
  1. CSS 样式

然后,使用 CSS 来设置容器的固定大小,并确保图片等比缩放以适应这个容器。

.image-container {
    width: 300px; /* 设置容器的宽度 */
    height: 200px; /* 设置容器的高度 */
    overflow: hidden; /* 隐藏超出容器的部分 */
    position: relative; /* 设置相对定位,以便图片可以相对于此容器定位 */
}

.image-container img {
    width: 100%; /* 设置图片宽度为容器宽度,高度将自动等比缩放 */
    height: auto; /* 确保高度自动,以保持图片的原始宽高比 */
    position: absolute; /* 绝对定位图片 */
    top: 50%; /* 将图片顶部设置到容器高度的50%处 */
    left: 50%; /* 将图片左侧设置到容器宽度的50%处 */
    transform: translate(-50%, -50%); /* 使用 transform 移动图片的位置,使其居中 */
    object-fit: cover; /* 确保图片覆盖整个容器,同时保持其宽高比 */
}

在这个例子中,.image-container 是固定大小的 div,而 img 标签内的图片将会等比缩放以适应这个容器。overflow: hidden; 确保任何超出容器大小的图片部分都会被隐藏。object-fit: cover; 则确保图片始终覆盖整个容器,同时保持其原始的宽高比。

请注意,你需要将 "your-image-source.jpg" 替换为你想要显示的实际图片路径或 URL。同时,你可以根据需要调整 .image-containerwidthheight 值来设置容器的大小。

标签:容器,缩放,image,50%,大小,div,图片
From: https://www.cnblogs.com/ai888/p/18674177

相关文章

  • Codeforces Round 867 (Div. 3)-D. Super-Permutation
    Codeforces题解-[CodeforcesRound867(Div.3)-D.Super-Permutation]题目链接题目描述Apermutationisasequence\(n\)integers,whereeachintegerfrom\(1\)to\(n\)appearsexactlyonce.Forexample,\([1]\),\([3,5,2,1,4]\),\([1,3,2]\)areper......
  • VP Codeforces Round 978 (Div. 2)
    A.BustoPénjamo题意:有n个家庭,每个家庭有\(a_i\)个人,现在有r排座位,每个座位可以坐两个人。如果一个人自己一个坐一个座位或者和自己家庭的人坐一个座位,他就会开心,问所有人都入座后最多有多少人开心。我们肯定尽量让一个座位坐两个同一家庭的人,这样一个座位可以让两个人开心。......
  • BigDecimal 比较大小
    BigDecimal比较大小|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------------|-------------|----......
  • CF div2 990(A~E)
    VP赛时\(4\)题,发挥得比较不错的一场,并且这场也偏简单。A数数题,找好规律直接模拟即可codeB简单排列组合题显然总方案数为:\[n!/(a_1!*a_2!*...*a_m!)\]\(a_1到a_m\)表示某种字符的数量想最小化总方案数,只能最大化上式分母的值。而题目操作等价于将某个\(a_i\)减......
  • NLP论文速读(ICML 2024)|通过人的反馈实现质量多样性(Quality Diversity through Human F
    论文速读|QualityDiversitythroughHumanFeedback:TowardsOpen-EndedDiversity-DrivenOptimization论文信息:简介:   本文的背景主要涉及两个领域:强化学习从人类反馈(ReinforcementLearningfromHumanFeedback,RLHF)和质量多样性(QualityDiversity,QD)算法......
  • Codeforces Round 992 (Div. 2) C题解析
    CodeforcesRound992(Div.2) C题解析题目描述......
  • 百度面试真题 - 大小端字节序问题(联合体/共用体 - 面试加分)
    标题大小端字节序标题大小端字节序(联合体/共用体)优质资源以上bilibili教程(大小端存储-详细简介)(空间也有)目录​编辑简介大小端存储(空间视频详解):强制类型转换- char*:巧用联合体,解决百度面试题 - 大小端字节序问题:使用联合体的优点:简介......
  • CF ROUND 847(Div3)
    B告诉你所有元素和,以及拿走一个最大值的剩余元素和,构造原序列。首先肯定有一个元素是最大值,剩下的就是构造一个最大值不超过某个值的,和为定值的序列。最简单的构造方式就是元素和均分,这样可以让最大元素尽量小,肯定不会超过最大值的限制voidsolve(){ cin>>n>>m>>k; int......
  • VP Educational Codeforces Round 159 (Rated for Div. 2)
    A.BinaryImbalance题意:给你一个01串,每次选一个01或者一个10在他们中间插一个0进去,问能不能让0的个数大于1。我们进行一次插入操作后,显然还可以继续操作,所以只要有0和1就一定可以。注意特判全0的情况。点击查看代码voidsolve(){ intn; std::cin>>n; std::s......
  • Linux和Windows文件大小为什么不一样,以及怎么对比文件完整性
    Windows上显示68019KB,而Linux上显示69650606字节文件大小LinuxLinux显示的是字节数ll或ls-lWindows文件中看到的是KB1KB=1024字节dir文件对比Linux文件MD5命令md5sumshupai.tar.gzWindows文件MD5命令需要使用PowerShellGet-FileHash-Algorithm......