HTML/CSS

CSS 截取图片只显示部分图片

阿里云

页面中需要在某个位置显示固定长宽的正方形图片,图片中有接近正方形比例但不是正方形,用 PHP 生成裁剪后的缩略图显然不合适,经过研究发现用 CSS 可以完美切割图片,经过测试 Chrome,FF,IE6-9 没问题。css 有一个 clip 属性可以剪切对象,对象 position 必须为 absolute。两张图分别为裁剪前和裁剪后的效果。

这个只是高度大于宽度的情况,如果这一批图片中还有一些宽度大于高度裁剪起来就会有些麻烦,不过经过试验已经完美解决,原理很简单,通过 js 在图片刚刚开始加载的时刻可以获取其宽度和高度,然后用 js 决定限制图片的高度还是宽度。如何在图片开始加载时获取大小可以在 这里 找到。

  1. <div><a href="{$v->url}"><img width="100" title="{$v->name}" alt="{$v->name}" src="{$v->icon.small}"/></a></div>
  2. <script type="text/javascript">
  3. $(function(){
  4.     $('div.icon img').each(function(){
  5.         var $this=$(this);
  6.         imgReady($this.attr('src'),function(){
  7.             if(this.width>this.height){
  8.                 $this.attr('height','100');
  9.                 $this.removeAttr('width');
  10.             }
  11.         });
  12.     });
  13. });
  14. </script>
也想出现在这里?联系我们
创客主机

CSS 截取图片只显示部分图片

已有 258 人购买
查看演示升级 VIP立刻购买

收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!