img {
vertical-align: middle;
max-width:100px; /* FF IE7 */
max-height:80px; /* FF IE7 */
width:expression(this.width > 100 && this.width > this.height ? 100 : true);
height:expression(this.height > 80 && this.height > this.width ? 80 : true);
overflow:hidden;
}
这个样式就是将超过 100×80 的图片按比例自动缩小,支持 IE6,IE7,IE8,FF。里面的 vertical-align: middle; 是垂直居中,不过这个仅当图片在 table 里才有效。
这个缩略图生成类是根据从 PHPCMS 挖出来的相关函数简单修改而来的。自觉使用起来挺方便的,呵呵。
用法也简单,范例如下:
$thumb = new thumb(str_replace(“\\”,”/”,dirname(__FILE__)).”/”); \\定义根物理路径
$thumb->get(‘images/107.jpg’); \\输入图片路径生成缩略图并返回缩略图路径
以上写法也可以改成
$thumb = new thumb();
$thumb->get(‘E:/htdocs/magki/include/images/107.jpg’);
不过前一种返回的是缩略图的相对路径,而后一种是返回缩略图的绝对物理路径。
缩略图的命名只定义了三个标签如下:
%maxwidth% get 方法中所定义的缩略图的最大宽度,默认 100
%maxheight% get 方法中所定义的缩略图的最大高度,默认 100
%basename% 所要生成缩略图的原图文件名
类中默认使用的缩略图命名是 thumb_%maxwidth%_%maxheight%_%basename% 像上面范例中所生成的缩略图命名就是根据默认来生成的,所得到的缩略图文件名为 thumb_100_100_107.jpg。有需要的可以自己扩展更多的缩略图命名标签。
另外,这个类的 get 方法还有一个参数是 autocut,如果赋值为 1 (默认值)则如果原图高宽比例和所指定的缩略图高宽比例不一致则会进行裁剪而非变形拉伸。
阅读全文…