保持宽度不变裁剪图片 html,固定长宽的img标签如何保持里面的图片不缩放
一、将图片作为dom元素
方案1:给图片周围留白
像这样,1:1的图片撑满图片区域,其他比例图片周围留白(粉~):如果图片高度大于宽度,则左右留白,高度小于宽度,上下留白
实现代码:
1
body{
margin: 0;
background-color: #555;
}
#box {
display: flex;
justify-content: start;
width: 500px;
flex-wrap: wrap;
margin: 20px auto;
background-color: #555;
}
#box div {
display: flex;
justify-content: center;
align-items: center;
width: 100px;
height: 100px;
background-color: pink;
margin-bottom: 5px;
}
#box div+div:not(:nth-child(5n)) {
margin-left: 5px;
}
// 注意:要在图片加载完之后才能获取到图片对象
window.onload = function() {
var box = document.getElementById("box");
var imgs = box.getElementsByTagName('img');
for (let i = 0; i < imgs.length; i++) {
var w = imgs[i].offsetWidth,
h = imgs[i].offsetHeight
w > h ? imgs[i].style.width = '100%' : imgs[i].style.height = '100%'
}
}
方案2:按所需尺寸截取图片中间部分,就像苹果相册的做法,不过这样会裁剪掉图片的一部分...hhhh,本来还想重写的,用的flex布局,然后发现上面代码只要改两个地方就能实现效果了:-D
给css里面的#box div添加overflow:hidden;属性;
将js里面w > h改成w < h;
效果图如下:
二、将图片作为背景图
图片和上面一样的我就不贴了
1
body{
margin: 0;
background-color: #555;
}
#box {
display: flex;
justify-content: start;
width: 500px;
flex-wrap: wrap;
margin: 20px auto;
background-color: #555;
}
#box div {
width: 100px;
height: 100px;
background-color: pink;
margin-bottom: 5px;
background-position: 50% 50%;
background-size: contain;
background-repeat: no-repeat;
}
#box div+div:not(:nth-child(5n)) {
margin-left: 5px;
}
var box = document.getElementById('box');
var imgs = ['33.jpg', 'avator.jpg', 'he.jpg', 'WechatIMG42.jpeg', 'timg.jpeg'];
for(var i = 0; i < imgs.length; i++){
var div = document.createElement("div");
div.style.backgroundImage = `url(${imgs[i]})`
box.appendChild(div, box)
}
这里其实只改变了#box div中background的部分样式,题主可以自己研究一下,上面的样式实现的是方案一,将#box div的background-size改为background-size: cover;就是方案二的效果咯
保持宽度不变裁剪图片 html,固定长宽的img标签如何保持里面的图片不缩放相关推荐
- html img 图片不拉伸,固定长宽的img标签如何保持里面的图片不缩放
一.将图片作为dom元素 方案1:给图片周围留白 像这样,1:1的图片撑满图片区域,其他比例图片周围留白(粉~):如果图片高度大于宽度,则左右留白,高度小于宽度,上下留白 实现代码: 1 body{ ...
- java实现图片固定长宽的缩放和裁剪
java实现图片固定长宽的缩放和裁剪 实现对aa文件夹进行深层遍历并将图片按长600宽400进行缩放和裁剪 import java.awt.Color; import java.awt.Graphic ...
- 怎么修改图片长宽尺寸?如何用电脑修改照片尺寸?
自媒体编辑工作的小伙伴经常需要修改图片尺寸(https://www.yasuotu.com/size)来应对不同平台的图片尺寸大小要求,那么如何改图片大小呢?接下来本文将带给大家一些关于图片改大小的相 ...
- java 程序实现对图片的压缩生成缩略图并可设定长宽、尺寸压缩率、图片质量
转载自 java 程序实现对图片的压缩生成缩略图并可设定长宽.尺寸压缩率.图片质量 之前是在另一位高手的上传内容中学习到的,并将其代码根据我的需求进行了修改,参考位置:http://jiangpin ...
- 利用opencv改变视频长宽
#include <windows.h> #include "cv.h" #include "highgui.h" int main() {CvCa ...
- python opencv 得到图片路径image_path的宽wide、高heigh和深度deep
python opencv 得到图片路径image_path的宽wide.高heigh和深度deep 图片路径是:'1.jpg' 下面是具体代码: import cv2 #得到图片路径image_pa ...
- 图片高度固定,宽度自适应,最大充满设定宽度,多余裁剪
需求:图片高度固定,宽度自适应,最大充满设定宽度,多余裁剪,且有圆角 说道这这里,就要用到adjustViewBounds,这个属性就是调整ImageView的长宽比例,使得图片和ImageView控 ...
- ImageMagick将多张图片拼接成一张图片_批量裁剪图片、拼接长图、添加水印不想打开ps,你可以试试这款软件...
工作中的需求常会遇到,批量处理一些图片,比如添加水印.压缩图片大小.批量裁剪等需求,ps可能没办法完成批量的操作,下面这款软件由一位摄影师开发,功能包括了图片加水印.长图拼接.富文本制图.尺寸调整.图 ...
- php修改图片为指定大小,php裁剪图片为固定大小步骤详解
这次给大家带来php裁剪图片为固定大小步骤详解,php裁剪图片为固定大小的注意事项有哪些,下面就是实战案例,一起来看一下. 做一个首页调用图像,有时需要获得固定大小的图像,因为首页的图像位置通常由设计 ...
最新文章
- [转]JAVA字节数据与JAVA类型的转换
- ZooKeeper和Diamond有什么不同
- python blp模型 估计_第三章 BLP模型(Bell-La Padula模型) | 学步园
- SketchUp(草图大师) 2019 安装教程
- FIXML and FpML - Background, Comparison, Integration Interoperability Opportunities
- 2017-2018-1 20155222 201552228 实验五 通讯协议设计
- 数据层HikariCP与MyBatis整合
- Python_迭代器和生成器的复习_38
- LeetCode 678. 有效的括号字符串(栈)
- python rindex()_Python3 rindex()方法
- linux硬件驱动网站,linux怎么查看已装好硬件驱动
- 医疗健康领域的短文本解析探索----文本纠错
- pandas之DataFrame
- 最好用的100个黑科技网站
- MATLAB——DEMATEL代码(转载)
- ASP.Net MVC开发基础学习笔记(9):查看详情、编辑数据、删除数据
- JPG图片怎么转换成Word文档
- 麻省理工十亿美元计算机学院,麻省理工学院宣布10亿美元成立新计算机学院 | 芥末堆...
- 一定要在最好的年纪拥有学习能力
- MySQL数据库学习笔记3