search
HomeWeb Front-endHTML TutorialjQuery: The image is not automatically reduced in proportion_html/css_WEB-ITnose

Sometimes we have the need to display images in a fixed size area. If you don't consider IE6, you can use the max-width limit of CSS to automatically scale down the display. However, there is a problem with this. If the height of the picture is not enough after scaling down, it will be ugly.

For example

The first case: if the image size is 600×350 and the display area size is 200×140, if the image is scaled according to the target width (200), the size becomes If it is 116, it will be ugly when displayed at 200×140. As shown on the left in the picture below

The second case: just the opposite, if the picture size is 400×400, the display area is also 200×140. If the picture is scaled according to the target height (140), the size becomes 140. That is 140×140, which is equally ugly. As shown on the right in the picture below

At this time, it is slightly better to use jQuery to get the image size and then judge and process it: In the first case, the width is calculated as 140 based on the height of 140, and then The image is displayed at 240×140, and the excess part is hidden using CSS overflow:hidden.

The following is my processing method: (Note - what is mentioned here is when the width and height of the original image are larger than the target display box size?? That’s why it is called reduction)

Html part

If the class of the display area is thumbnail

<div id="content">	<div class="thumbnail"><img src="" alt="" /></div></div>

css part

.thumbnail{overflow:hidden;width:200px;height:140px;}

jQuery part

1. Of course. Let’s hang the jQuery library first. How to hang it on Google and Baidu?

2. Core code

jQuery(document).ready(function(){/* 图片不完全按比例自动缩小 by zwwooooo */    $(window).load(function(){	$('#content div.thumbnail img').each(function(){		var x = 200; //填入目标图片宽度		var y = 140; //填入目标图片高度		var w=$(this).width(), h=$(this).height();//获取图片宽度、高度		if (w > x) { //图片宽度大于目标宽度时			var w_original=w, h_original=h;			h = h * (x / w); //根据目标宽度按比例算出高度			w = x; //宽度等于预定宽度			if (h < y) { //如果按比例缩小后的高度小于预定高度时				w = w_original * (y / h_original); //按目标高度重新计算宽度				h = y; //高度等于预定高度			}		}		$(this).attr({width:w,height:h});	});    });});

Applicable places: Fixed size image display area, such as thumbnails.

Finished.

Reprinted from: http://zww.me/archivesd/25474

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What is the purpose of the <datalist> element?What is the purpose of the <datalist> element?Mar 21, 2025 pm 12:33 PM

The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

What is the purpose of the <progress> element?What is the purpose of the <progress> element?Mar 21, 2025 pm 12:34 PM

The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati

What is the purpose of the <meter> element?What is the purpose of the <meter> element?Mar 21, 2025 pm 12:35 PM

The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex

What is the purpose of the <iframe> tag? What are the security considerations when using it?What is the purpose of the <iframe> tag? What are the security considerations when using it?Mar 20, 2025 pm 06:05 PM

The article discusses the <iframe> tag's purpose in embedding external content into webpages, its common uses, security risks, and alternatives like object tags and APIs.

What is the viewport meta tag? Why is it important for responsive design?What is the viewport meta tag? Why is it important for responsive design?Mar 20, 2025 pm 05:56 PM

The article discusses the viewport meta tag, essential for responsive web design on mobile devices. It explains how proper use ensures optimal content scaling and user interaction, while misuse can lead to design and accessibility issues.

How do I use HTML5 form validation attributes to validate user input?How do I use HTML5 form validation attributes to validate user input?Mar 17, 2025 pm 12:27 PM

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

What are the best practices for cross-browser compatibility in HTML5?What are the best practices for cross-browser compatibility in HTML5?Mar 17, 2025 pm 12:20 PM

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

How do I use the HTML5 <time> element to represent dates and times semantically?How do I use the HTML5 <time> element to represent dates and times semantically?Mar 12, 2025 pm 04:05 PM

This article explains the HTML5 <time> element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool