javascript - 我的 masonry 图像仅显示在一个列中

标签 javascript jquery css ruby-on-rails masonry

我在使用 OMR 一个月 rails 教程时遇到问题。我正在制作一个类似 pinteresting 的布局,可以在调整窗口大小时移动照片。我几乎完全按照教程进行了操作。

但是照片没有填满页面布局。该网站正在拍摄我的照片并将它们列为一栏:Error

/app/assets/javascripts/photos.js.coffee:

$ ->
  $('#photos').imagesLoaded ->
    $('#photos').masonry
      itemSelector: '.bot'
      isFitWidth: true

index.html.erb:

<div id="photos" class="transitions-enabled">
  <% @photos.each do |photo| %>
    <div class="bot panel panel-default">
      <%= image_tag photo.image.url(:medium) %>
      <div class="panel-body">
        <%= photo.description %>
        <%= photo.user.email if photo.user %>
        <%= link_to 'Show', photo_path(photo) %>
        <% if photo.user == current_user %>
          <%= link_to 'Edit', edit_photo_path(photo) %>
          <%= link_to 'Destroy', photo, method: :delete, data: { confirm: 'Are you sure?' } %>
        <% end %>
      </div>
    </div>
  <% end %>
</div>

照片.css.scss:

#photos {
  margin: 0 auto;
}

.bot {
  margin: 5px;
  width: 214px;
}

.bot img {
  width: 100%;
}

我怎样才能使这种布局使照片彼此相邻而不是在一个单独的列中?我将“box”更改为“bot”,因为它与我拥有的另一个 css 文件冲突。但即使我确实更改了那个 css 也没关系,因为它仍然显示为单个列。

编辑: 通过我在网上找到的一些 css,我能够 sudo-fix 这个问题。 新的 photos.css.scss 文件:

#photos {
  margin: 0 auto;
}

.bot {
 margin:5px;
 padding:5px;
 font-size: 11px;
 line-height: 1.4em;
 float: left;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
 box-shadow: 1px 1px 10px #444;
 width: 214px;
}

.bot img {
 display: block;
 width: 100%;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 border-radius: 5px;
}

这解决了我的单列问题。然而,现在我的照片幻灯片之间有很大的差距,像这样:Masonry Error

最佳答案

我想通了... OMR 教程有

//= require tree .

行。由于另一段 jquery 的一些错误,我已经排除了这一行。我没有手动插入我的

//= require photos

行。我只包括了

//= require masonry/jquery.masonry

行。 它在生产中有效,但在开发中表现略有不同,这对我来说很好。

关于javascript - 我的 masonry 图像仅显示在一个列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29119188/

相关文章:

javascript - spine 路由(spine js mvc)如何工作?

javascript - 通过 JavaScript 访问表单值

javascript - 使用javascript在html5中单击图像时播放视频?

javascript - 使用 javascript 检查数字长度并允许长度在 6 到 8 之间的正则表达式

javascript - 从 html 表中的每一行中提取属性

jquery - 更改 SELECT 框中的文本颜色

asp.net - 当用户控件可见时执行 JavaScript

Javascript 常见问题解答下拉列表

javascript - 视差效果 - 消除部分之间的差距

html - 如何修复具有固定大小的行 GridView 产品?