我一直在this question询问css可行的解决方案,以获得具有不同比率图像的响应式照片库。
不幸的是我觉得通过css这样做太复杂了,所以唯一快速简便的解决方案是使用javascript来检查缩略图的宽高比并更改某些拇指的内联css:
如果比率低于0.6666666666666667(2:3),则脚本应检查每个缩略图的height:width
比率,然后通过css height:100%; max-width:none;
设置以覆盖实际规则。如果更容易,也可以添加一个类。
如何通过javascript完成? (也可以使用jquery,因为其他插件已经存在库)。
网格结构如下:
<ul id="gallery" class="gallery-grid">
<li class="grid-block">
<div class="block-wrap">
<div class="link-wrap">
<a href="<?php echo $photo->sourceImageFilePath; ?>" class="block-link" target="_blank" >
<img class="block-thumb" src="<?php echo $photo->thumbImageFilePath; ?>"/>
</a>
</div>
</div>
</li>
</ul>
当然,如果你能找到一个可行的css回答我之前的问题,那就更受欢迎了!谢谢!
答案 0 :(得分:5)
var ratio = $img.height() / $img.width();
if ( ratio < (2/3) ) { $img.css({ height: '100%', maxWidth: 'none' }) }
答案 1 :(得分:3)
您可能只想查询每个缩略图并进行数学计算。
$('img').each(function(_, img) {
var $this = $(this);
if( $this.height() / $this.width() < 0.6666666666666667 ) {
$this.css({
height: '100%',
maxWidth: 'none'
});
}
});