質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

1回答

7925閲覧

railsの<%の後にclassやidをつけるにはどういう風に書けば良いですか?

退会済みユーザー

退会済みユーザー

総合スコア0

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

0クリップ

投稿2018/08/19 01:32

下記コードのようにlink_toではない普通の <% ~~ %>の文にclassをつける方法がわからないので教えて頂きたいです。
<h5 class="card-title"><%= @user.name, class: "user-name" %></h5>

ちなみに上記のコードで実行したらshow.html.erb:14: syntax error, unexpected tLABEL, expecting '=' er.append=( @user.name, class: "user-name" );@output_buffer. ^ というエラーが出ました。

全文は以下の通りです。

<div class="text-center"> <h2>ユーザー詳細</h2> </div> <div class="row"> <div class="col-md-3 offset-md-1"> <div class="card" style="width: 18rem;"> <% if @user.avatar.attached? %> <div class="center"> <%= image_tag @user.avatar.variant(resize: "300x300"), class: "prof-img-top" %> </div> <% end %> <div class="card-body center"> <h5 class="card-title"><%= @user.name, class: "user-name" %></h5> <div class="col-md-3 inline-block"> <% if @user.sex == "男性" %> <i class="fas fa-male fa-4x"></i> <% elsif @user.sex == "女性" %> <i class="fas fa-female fa-4x"></i> <% else %> <p class="card-text no-margin-p"><%= @user.sex %></p> <% end %> </div> <div class="col-md-7 inline-block"> <p class="card-text no-margin-p"><%= @user.location %></p> <p class="card-text no-margin-p"><%= @user.collage %></p> </div> </div> </div> </div> </div>

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

そもそもHTMLの性質上、タグでないところにclassを与えることはできませんので、何かしらのタグで囲む必要があります。

<!-- タグやクラスを作り付けで書く --> <h5 class="card-title"><span class="user-name"><%= @user.name %></span></h5> <!-- クラスが動的に変わる場合 --> <h5 class="card-title"><%= content_tag :span, @user.name, class: classes %></h5> <!-- クラスを使う側の作りによっては、このような手もありかも --> <h5 class="card-title user-name"><%= @user.name %></h5>

投稿2018/08/19 01:48

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/08/19 09:51

勉強になりました! ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問