You are here

首页和主要分类页面的图片能缩放吗

seabear 的头像
Submitted by seabear on 星期二, 2008-11-18 02:42

我通过imce上传的图片是width:750;但首页和主要分类的内容栏只能显示width:640的图片,750的图片在这里就把主题撑大了,而且乱了,右侧的区块都跑到页面底部去了。
请问有没有插件或什么办法在首页和主要分类页面让 >640的图片进行自动缩放。

论坛:

g089h515r806 的头像

imagecache模块,建议你看看这个,创建几个预设置,大于640都自动切成640的。

g089h515r806 的头像

imagecache依赖于imageAPI,imageAPI不依赖于其它模块,不过这些都是imagecache内部的模块,所以你可以单独的安装imagecache模块 ,不过需要php5.2很多虚拟主机不支持。我刚查的。

seabear 的头像

很感谢  g089h515r806
刚才按照那篇文章启用Imagecache, CCK 和Imagefield,imageAPI,真是一头雾水啊。
从我的角度来讲我觉得应该从主题上控制应该更方便些,毕竟首页和主要分类页面并不是很多
刚才又看到了《如何实现Page-nodetype.tpl.php》

g089h515r806 的头像

css控制的效果有时不好,使用width,height属性,我用过,每次都被客户提出批评,说不清晰,看起来是有一点点不清晰,不过一般都没事,除非特别挑剔的客户.

seabear 的头像

今天在网上找了两段代码:
img { max-width:600px; width:expression(document.body.clientWidth>600?"600px":"auto"); overflow:hidden; }
上面这段代码在ff里面没问题,但在ie6里面会把小于600的图放大,不知道为什么;
img{ max-width:600px; autoimg:expression(onload=function(){this.style.width=(this.offsetWidth > 600)?"600px":"auto"}); }
然而这段代码就可以做到ff和ie6通吃,在ff和ie6里面都达到了我想要的效果,即大于宽度600图片会自动缩放,而小于600的话则保持不变。
感谢g089h515r806和dghabc两位大侠。。

dghabc 的头像

CSS表达式是动态设置CSS属性的强大(但危险)方法。Internet Explorer从第5个版本开始支持CSS表达式。下面的例子中,使用CSS表达式可以实现隔一个小时切换一次背景颜色: background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" ); 如上所示,expression中使用了JavaScript表达式。CSS属性根据JavaScript表达式的计算结果来设置。expression方法在其它浏览器中不起作用,因此在跨浏览器的设计中单独针对Internet Explorer设置时会比较有用。 表达式的问题就在于它的计算频率要比我们想象的多。不仅仅是在页面显示和缩放时,就是在页面滚动、乃至移动鼠标时都会要重新计算一次。给CSS表达式增加一个计数器可以跟踪表达式的计算频率。在页面中随便移动鼠标都可以轻松达到10000次以上的计算量。 一个减少CSS表达式计算次数的方法就是使用一次性的表达式,它在第一次运行时将结果赋给指定的样式属性,并用这个属性来代替CSS表达式。如果样式属性 必须在页面周期内动态地改变,使用事件句柄来代替CSS表达式是一个可行办法。如果必须使用CSS表达式,一定要记住它们要计算成千上万次并且可能会对你 页面的性能产生影响。
在IE8之后不再支持CSS表达式

seabear 的头像

dghabc:在上传时控制图片大小才是王道
那按照这样来说只能生成缩略图方法,不过看看image模组、imce模组等都采用的缩略图模式,但我想问,在drupal摘要里面怎么才能显示缩略图,因为我看原始模板里面就是直接print content

dghabc 的头像

我认为drupal中的图片有2大类:一类是采用CCK中的image 字段,这类是可用imagecache进行处理的,进行动态的缩放,另一类图片是放在文章中的,如教程文章的话可能有N张图,这类要通过上传图片之前先控制大小.
你的意思可能是属于第一类的,要在缩略图显示小图,正文显示大图,那要用CCK中的字段.

g089h515r806 的头像

imagecache好象也可以和imce结合使用吧。我的建议是这样的,如果你的图片数量比较少的话,而且只有你自己才可以上传得话,我建议使用photoshop这样的切图工具把图切好再上传。如果你的网站有很多图片,并且普通用户也可以上传得话,我建议你使用像imagecache这样的模块。多少算少呢?只要不超过100个,我觉得都不多几十个图片很正常的样子,手工切图很快的,也很简单。
能硬编码的地方,就硬编码。可以节省很多时间到。

seabear 的头像

g089h515r806 :imagecache好象也可以和imce结合使用吧
有人做过吗? 发个教程看看

dghabc 的头像

imce我只是用在和tinymce结合,在文章内容中上传图片,imagecache和imce结合使用倒真没用过。如果你的一篇文章中有10多张图片,另个同类的文章中可能没有图片,我的理解应该不是用CCK,而是先处理好再上传,而且你说的缩略图显示,难道你要在摘要中全部将这10多张缩略图都显示出来?

seabear 的头像

dghabc :难道你要在摘要中全部将这10多张缩略图都显示出来?
摘要里可能就是现实2-3的缩略图而已

g089h515r806 的头像

人品问题了,IE总是和人不一样,这样的css问题需要专门的美工才能搞定.