0
0

【Rails】ボタン内でtextを改行して上と下で別のclassを指定したい。

Posted at

こういうボタンを作りたいときに困ったので

image.png

書き方が分からなかったので試行錯誤した

qiita.erb
<%= submit_tag "規約を確認のため、\n投稿する", class:'hobehoge',name:nil %> 

のように書くと改行はできるけど、こんな感じになってしまう。

image.png

「規約を確認の上、」の部分と「投稿する」の部分で別のcss定義を反映したい。

qiita.erb
<% submit_label "<span class = 'fugafuga'>規約を確認のため、</span>" %> 
<%= submit_tag "#{submit_label}+\n投稿する", class:'hobehoge',name:nil %> 

image.png

だとのようにspanタグで設定したい内容がボタンに表示されてしまう…

【結論】button_tagとcontent_tagを使った

qiita.erb
<%= button_tag type::sumit,class: 'hogehoge' do %> 
  <%= cotent_tag :span,"規約を確認のため、",class:'fugafuga' %> 
  <%= cotent_tag :br,"投稿する" %> 
<% end %> 

button_tagについて
https://railsdoc.com/page/button_tag

content_tagについて
https://railsdoc.com/page/content_tag

それぞれのクラスを指定してcontent_tagをbutton_tagで囲うと期待していたボタンのデザインが完成した。
image.png

感想

submit_tagしか知らなかったからこういった書き方があるんだな~と思った。
似たようなものにbutton_toというものがある。
違いはリンク先の記事が分かりやすかった。
https://zenn.dev/dai_44/scraps/210c5291226c9b

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0