【发布时间】:2014-10-27 14:15:55
【问题描述】:
我有不同纵横比和尺寸的产品缩略图。这是一个市场应用程序,因此卖家将加载各种尺寸的图像。我想调整大小以使其适合我拥有的缩略图网格。
下面的 css 完成了大部分工作。但是图像是顶部对齐的。我希望它们底部或中间对齐。 vertical-align 由于某种原因不起作用。
在演示站点mktdemo.outfitadditions.com 上查看第二项。
有没有更好的方法来做到这一点?我也尝试了一些 JS 插件,但它们都无法正常工作。
我希望 css 能够响应。我正在使用 Paperclip 将图像大小调整为 200x200,即适合 200x200 的纵横比的最大可能尺寸。因此,如果图像是横向尺寸的,则宽度比高度短,这会使事情发生变化。这就是为什么下面的css。
.thumbnail {
display: block;
width: 100%;
position: relative;
height: 0;
padding: 80% 0 0 0;
overflow: hidden;
border: none;
}
.thumbnail img
{
position: absolute;
display: block;
max-width: 100%;
max-height: 100%;
left: 0;
right: 0;
top: 3px;
bottom: 5px;
}
.caption {
h3 {
font-size: 15px;
margin: 2px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
p {
font-size: 13px;
margin: 4px;
}
position: relative;
top: -7px;
padding: 3px;
background-color: #f0f0f0;
}
我的 html.erb:
<div class="center">
<div class="row">
<% @listings.each do |listing| %>
<div class="col-md-3 col-sm-3 col-xs-6">
<div class="thumbnail" >
<%= link_to image_tag(listing.image.url(:medium), class: "img-responsive"), listing, data: { no_turbolink: true } %>
</div>
<div class="caption">
<h3><%= link_to listing.name.downcase.titleize, listing, data: { no_turbolink: true } %></h3>
<p><%= number_to_currency(listing.price) %></p>
</div>
</div>
<% end %>
</div>
<p><%= will_paginate @listings, renderer: BootstrapPagination::Rails %></p>
</div>
我的带有回形针/imagemagick 选项的模型代码。
has_attached_file :image,
:styles => { :medium => "200x200>", :thumb => "100x100>" }
【问题讨论】:
-
尝试为您的包装 div 设置一些标准高度和宽度。
-
它不会响应。
-
然后给你的图片一个标准的高度和宽度。无论如何,每个 iamges 都会绑定到一个
标签,对吧?
-
我将大小调整为 200x200,但请参阅演示站点。查看第一张和第二张图片。调整大小取决于是横向还是纵向。如何将演示中的第二张图片居中对齐?
标签: jquery css ruby-on-rails