一、将图片作为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标签如何保持里面的图片不缩放相关推荐

  1. html img 图片不拉伸,固定长宽的img标签如何保持里面的图片不缩放

    一.将图片作为dom元素 方案1:给图片周围留白 像这样,1:1的图片撑满图片区域,其他比例图片周围留白(粉~):如果图片高度大于宽度,则左右留白,高度小于宽度,上下留白 实现代码: 1 body{ ...

  2. java实现图片固定长宽的缩放和裁剪

    java实现图片固定长宽的缩放和裁剪 实现对aa文件夹进行深层遍历并将图片按长600宽400进行缩放和裁剪 import java.awt.Color; import java.awt.Graphic ...

  3. 怎么修改图片长宽尺寸?如何用电脑修改照片尺寸?

    自媒体编辑工作的小伙伴经常需要修改图片尺寸(https://www.yasuotu.com/size)来应对不同平台的图片尺寸大小要求,那么如何改图片大小呢?接下来本文将带给大家一些关于图片改大小的相 ...

  4. java 程序实现对图片的压缩生成缩略图并可设定长宽、尺寸压缩率、图片质量

    转载自  java 程序实现对图片的压缩生成缩略图并可设定长宽.尺寸压缩率.图片质量 之前是在另一位高手的上传内容中学习到的,并将其代码根据我的需求进行了修改,参考位置:http://jiangpin ...

  5. 利用opencv改变视频长宽

    #include <windows.h> #include "cv.h" #include "highgui.h" int main() {CvCa ...

  6. python opencv 得到图片路径image_path的宽wide、高heigh和深度deep

    python opencv 得到图片路径image_path的宽wide.高heigh和深度deep 图片路径是:'1.jpg' 下面是具体代码: import cv2 #得到图片路径image_pa ...

  7. 图片高度固定,宽度自适应,最大充满设定宽度,多余裁剪

    需求:图片高度固定,宽度自适应,最大充满设定宽度,多余裁剪,且有圆角 说道这这里,就要用到adjustViewBounds,这个属性就是调整ImageView的长宽比例,使得图片和ImageView控 ...

  8. ImageMagick将多张图片拼接成一张图片_批量裁剪图片、拼接长图、添加水印不想打开ps,你可以试试这款软件...

    工作中的需求常会遇到,批量处理一些图片,比如添加水印.压缩图片大小.批量裁剪等需求,ps可能没办法完成批量的操作,下面这款软件由一位摄影师开发,功能包括了图片加水印.长图拼接.富文本制图.尺寸调整.图 ...

  9. php修改图片为指定大小,php裁剪图片为固定大小步骤详解

    这次给大家带来php裁剪图片为固定大小步骤详解,php裁剪图片为固定大小的注意事项有哪些,下面就是实战案例,一起来看一下. 做一个首页调用图像,有时需要获得固定大小的图像,因为首页的图像位置通常由设计 ...

最新文章

  1. [转]JAVA字节数据与JAVA类型的转换
  2. ZooKeeper和Diamond有什么不同
  3. python blp模型 估计_第三章 BLP模型(Bell-La Padula模型) | 学步园
  4. SketchUp(草图大师) 2019 安装教程
  5. FIXML and FpML - Background, Comparison, Integration Interoperability Opportunities
  6. 2017-2018-1 20155222 201552228 实验五 通讯协议设计
  7. 数据层HikariCP与MyBatis整合
  8. Python_迭代器和生成器的复习_38
  9. LeetCode 678. 有效的括号字符串(栈)
  10. python rindex()_Python3 rindex()方法
  11. linux硬件驱动网站,linux怎么查看已装好硬件驱动
  12. 医疗健康领域的短文本解析探索----文本纠错
  13. pandas之DataFrame
  14. 最好用的100个黑科技网站
  15. MATLAB——DEMATEL代码(转载)
  16. ASP.Net MVC开发基础学习笔记(9):查看详情、编辑数据、删除数据
  17. JPG图片怎么转换成Word文档
  18. 麻省理工十亿美元计算机学院,麻省理工学院宣布10亿美元成立新计算机学院 | 芥末堆...
  19. 一定要在最好的年纪拥有学习能力
  20. MySQL数据库学习笔记3

热门文章

  1. 创新奇智晋升独角兽,用时2年半,AI+是独门武器
  2. 一维线搜索确定最优步长
  3. 创建商品表中插入一条数据/图书表中新增一条记录/学生表中,要求查询姓张,并且年龄在18到25岁之间的学生/查询article文章表
  4. H265/H264/Mjpeg/mpeg
  5. 『Javascript基础重点』13.dom的应用
  6. 马云的五新其实没有哪一个是新的
  7. Python爬虫多线程提升数据下载的性能优化
  8. 计算机工作很苦,上班苦上班累经典句子 我不辛苦只是命苦
  9. Jtemplate解析Json小引
  10. 前端Img图片不同格式的互相转化