1

我是 ruby​​ 新手,这是我的第一个 stackoverflow 问题(尽管我已经使用了以前的问题并回答了很多 - 谢谢你的 stackoverflow 社区!)所以如果这是一个愚蠢的问题,请原谅我。

我已经看到有关 Heroku 和 boostrap.css 问题的其他问题,但这并不是一个彻底的错误,因为它没有按预期工作。

我最近使用 boostrap.css 提供的样式在我的 Rails 3 应用程序中添加了一个顶部导航栏。在文档中,他们建议在 css 文件中添加 padding-top: 40px 以为导航栏腾出空间。

填充在 localhost 上看起来是正确的,但由于某种原因在 Heroku 中不起作用。boostrap css 的其余部分似乎是正确的(按钮颜色、表格属性等),但我无法制作填充棒。一个简单的解决方法是在我的 index.html 文件顶部添加一些
标签,但我想了解为什么会发生这种情况,以防它表明更大的 css 问题。

添加到 bootstrap.css 文件中以进行填充的代码:

html, body {padding-bottom: 10px;
padding-right: 10px;   
padding-left: 10px;
padding-top: 40px; 
}

index.html 代码:

<div class="topbar">
<div class="fill">
    <div class="container">
        <h3><%= link_to 'Your Book Club', homes_path %></h3>
        <ul>
            <li><%= link_to 'Home', homes_path %></li>
            <li class="active"><%= link_to 'Books', books_path %></li>
            <li><%= link_to 'Locations', locations_path %></li>
            <li><a href="#">Calendar</a></li>
      </ul>
      <form action="">
        <input type="text" placeholder="Search" />
      </form>
      <ul class="nav secondary-nav">
        <li class="menu">
            <a href="#" class="menu">Account stuff will go here</a>
            <ul class="menu-dropdown">
                <li><a href="#">Dolor sit</a></li>
                <li><a href="#">Amet Consequeter</a></li>
                <li class="divider"></li>
                <li><a href="#">Enough with the Latin</a></li>
            </ul>
        </li>
      </ul>
    </div>
</div>
</div>


<h1>Which books do you want to read as part of our book club?</h1>

<br />

<h3>Instructions:</h3>

<br />

<p>1. Vote for any of the books below that you'd like to read</p>

<br /><br/>

<p>2. And/or:

    <button type="submit" class="btn"><%= link_to 'Add a New Book', new_book_path %></button></p>

    <br /><br/>

<p>3.

    <button type="submit" class="btn info"><a href="./locations">Vote on     Locations</a></button> 


            <br /><br />

<table class="zebra-striped">
<tr>
<th>Title (Click name to see description)</th>
<th>ISBN</th>
<th>How many votes does it have?</th>
<th>Vote for this book</th>
<th></th>
</tr>


<% @books.each do |book| %>
<tr>

<td><%= link_to book.title, book %></td>
<td><%= book.isbn %></td>
<td><%= pluralize(book.votes.length, "vote") %></td>
<td><%= link_to '+1', votes_path(:book_id => book.id), :method => :post %></td>  
<td><span class="label important"><%= link_to 'Delete', book, confirm: 'Are you sure?',             
                method: :delete %></span></td>
  </tr>
<% end %>

</div>

</table>

<br />
4

1 回答 1

4

我没有发现您正在使用 Asset Pipeline。这就是您的问题所在;您需要在提交和推送之前预编译资产:http: //devcenter.heroku.com/articles/rails31_heroku_cedar

bundle exec rake assets:precompile
git ci -a -m "Compile assets for production"
git push

请注意,如果您使用的是 Celadon Cedar,则有一些钩子可以在 slug 编译时为您执行此操作,这非常方便。

于 2011-11-07T23:06:03.537 回答