Railsで特定のページだけにCSSファイルを追加する方法を見て知った。これは便利。
application.html.erb等で、 yieldにパラメータを指定すればOK。
<html>
<head>
<title>テスト</title>
<%= yield :head %>
</head>
<body>
<%= yield %>
<%= yield :foot %>
</body>
</html>
Viewの方ではcontent_forに同じパラメータを指定してブロック内に書く。
<h1>head and foot</h1>
<% content_for :head do %>
<%= stylesheet_link_tag "foo" %>
<% end %>
<% content_for :foot do %>
<%= javascript_include_tag "bar" %>
<% end %>
こんな感じのHTMLになる。
<html>
<head>
<title>テスト</title>
<link href="/stylesheets/foo.css?1345990170" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>head and foot</h1>
<script src="/javascripts/bar.js?1350833305" type="text/javascript"></script>
</body>
</html>
これを使えばCSSはhead内に、JavaScriptはbody要素の最後に入れられる。
0 件のコメント:
コメントを投稿