使用百分比设置自动缩放图片的小技巧

响应式web网页开发中,如果要求无论是PC端还是移动端,网页都要铺满整个屏幕,并且图片要随着屏幕进行自动缩放。图片自动缩放很容易想到用百分比来设定宽高,可是用百分比形式设置图片的宽高,那么不管是放大还是缩小,浏览器都将保持图像的宽高比例。这意味着图像的高度与宽度之比将不会发生变化,图像也就不会发生扭曲。这也会引发一个问题,那就是当浏览器只是宽度改变而高度不变时,图片默认下宽度是随着浏览器变化而变化,而图片的高度也会岁宽度发生改变。原本想要的是当屏幕宽度改变高度不变的时候,图片也只是宽度改变高度不变,这可怎么办呢?

当给图片宽高设定百分比时,屏幕宽度改变高度不变,图片宽高都会发生改变,如下代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>使用图片</title>
<style type="text/css">
 img{
  width: 60%;
  height: 50%;
 }
</style>
</head>
<body>
<img src="http://anshun.wedsoso.com/uploadfile/1302/11301221423571361427837432.jpg" >
</body>
</html>

  

屏幕宽度改变高度不变,图片也只是宽度改变高度不变

解决方案:给窗口添加一个resize()事件,屏幕改变的时候获取而屏幕的宽高,然后按照一定的比例对图片进行缩放,值得注意的是,浏览器还没有改变的之前图片也要按照一定的比例进行缩放,所以要在事件外面给图片设定同样的宽高比例。

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>使用图片</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<style type="text/css">
 img{
  width: 60%;
  height: 50%;
 }
</style>
</head>
<body>
<img src="http://anshun.wedsoso.com/uploadfile/1302/11301221423571361427837432.jpg" >
<script type="text/javascript">
$("img").width(document.documentElement.clientWidth*0.6);
     $("img").height(document.documentElement.clientHeight*0.5);
$(window).resize(function() {
       $("img").width(document.documentElement.clientWidth*0.6);
     $("img").height(document.documentElement.clientHeight*0.5);
   });

</script>
</body>
</html>

  

使用百分比设置自动缩放图片的小技巧

时间: 2024-08-29 07:28:48

使用百分比设置自动缩放图片的小技巧的相关文章

JQury自动切换图片----带有小图片,代码一共不超过100行

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title> new document </title> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <meta name="author"

PDF转换成图片的小技巧,快快收藏

不论是学习还是工作,我们都会跟各种类型的文档打交道,时间久了,遇到的问题也会千奇百怪,比如:将PDF转换成图片的问题你遇到过吗?这个时候别慌,多学习一些技能,就能游刃有余.小编这里就有一个现成的PDF转换成图片的教程, 大家可以学习一下,以备不时之需. 1.前往在线PDF转换平台--pdf365.cn 2.点击"PDF转图片"图标,进入PDF文档上传页面,将需要转换的PDF文档添加到转换窗口中: 3.点击"开始转换"按钮,即可完成在线PDF转换成图片: 4.转换成功

如何在桌面添加软件快捷方式,如何设置软件打开快捷键——ubuntu小技巧5

如何在桌面添加软件快捷方式,如何设置软件打开快捷键 1.如何在桌面添加软件快捷方式 ubuntu下在打开应用时,可以右键该应用设置Lock to Launcher,让软件固定在最左边方便打开:可是数量有限啊,没有新建快捷图标方式方便,下面说说如何新建图标: 在ubuntu中,进入/usr/share/applications,可以发现几乎所有的应用程序的图标都在这个文件夹,只需将图标复制粘贴到桌面即可,就实现了快捷图标志的新建. 对于一些非正常安装的程序,如免安装的程序.用wine安装的部分ex

Android代码中动态设置图片的大小(自动缩放),位置

项目中需要用到在代码中动态调整图片的位置和设置图片大小,能自动缩放图片,用ImageView控件,具体做法如下: 1.布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"

IOS开发UI篇之自动滚动图片

我们在做项目是有时候会遇到设置自动滚动图片,所以我自己也遇到过两次.觉得他是一个挺有意思东西,所以做了下总结 DEMO: .h #import <UIKit/UIKit.h> @interface ImagePlayView : UIView<UIScrollViewDelegate> @property (nonatomic, strong) UIScrollView * scroll; @property (nonatomic, strong) UIPageControl *

[小技巧] bash 中快速跳转到目录里

该技巧仅仅适用于如下情况: $ ls /tmp $ cp a.txt /tmp 上述的命令里的最后一个参数是需要跳转的目录时, 按 Alt + . 键,即可快速输出对应的目录. 例子: $ ls /tmp $ cd -> 然后按 Alt + . 这时, /tmp会被自动补全. [小技巧] bash 中快速跳转到目录里

如何一个td或table里的图片等比例缩小(css问题)图片自动缩放

网上说了一大堆,说什么设置div的宽度,特别是这篇: http://www.divcss5.com/wenji/w632.shtml 害死人,我们为什么要自动缩放?还不是手机屏幕太多分辨率了?你指定了宽度还怎么缩放?你妹的. 经过我的多次实验,发现一个比较好的方法, 在ios微信/浏览器和android微信/浏览器都可以完美显示,那就是: 1.div不做要求,内容居中就好了 2.放一个table进去,table的width=100%,这是最关键的 3.在td放一个img,img的max-widt

wxPython缩放图片控件的一个小例子

前几天写程序的时候,想有个自适应的图片控件,但是一直没有找到合适的解决方案.今天终于解决了这个问题,发在这里,以供参考. 程序截图: 文件下载地址: http://files.cnblogs.com/zzrom/poker.zip wxPython缩放图片控件的一个小例子

html 网页背景图片根据屏幕大小CSS自动缩放

https://blog.csdn.net/coslay/article/details/47109281 腾讯微博和QQ空间的登录背景图片是根据访客的屏幕大小自动缩放的,但是好像是用JQuery代码实现的.先不说要调用jq库拖慢了网页的打开时间,而且对于兼用性不好. 前几天用CSS研究出相同效果的样式代码.无论图片多大都能根据屏幕变化(当然图片尺寸越大越好).而且在拉动网页窗体大小时会自动调节图片大小,实时交互.效果上图看不了.在这里放个连接, CSS 代码如下: #background {