前提・実現したいこと
CSSでtextareaの文字の改行が反映されるようにしたのですが、
全て左づめで表示されず1行目の頭に空白がいくつか入ってしまいレイアウトが崩れてしまいます。
これを解決し1行目も左づめで表示したいです。
発生している問題・エラーメッセージ
textareaで入力した文字が全て左づめで表示されず
1行目の頭に空白がいくつか入ってしまいレイアウトが崩れてしまう。
該当のソースコード
show.html.erb
ruby
1<main class="main"> 2 <div class="inner"> 3 <div class="prototype__wrapper"> 4 <div class="prototype__image"> 5 <%= image_tag @song.image, class: :song__img %> 6 </div> 7 <% if artist_signed_in? && current_artist.id == @song.artist_id %> 8 <div class="prototype__manage"> 9 <%= link_to "編集する", edit_song_path(@song), class: :prototype__btn %> 10 <%= link_to "削除する", "/songs/#{@song.id}",method: :delete, class: :prototype__btn %> 11 </div> 12 <% end %> 13 <p class="prototype__hedding"> 14 <%= @song.title %> 15 </p> 16 <%= link_to @song.artist.name, root_path, class: :prototype__user %> 17 <div class="prototype__body"> 18 <div class="song__detail"> 19 <p class="detail__title">作詞</p> 20 <p class="detail__message"> 21 <%= @song.writer %> 22 </p> 23 </div> 24 <div class="song__detail"> 25 <p class="detail__title">作曲</p> 26 <p class="detail__message"> 27 <%= @song.composer %> 28 </p> 29 </div> 30 <div class="song__detail"> 31 <p class="detail__title">歌詞</p> 32 <p class="detail__lyric"> 33 <%= @song.lyric %> 34 </p> 35 </div> 36 </div> 37 </div> 38 </div> 39</main>
style.css
ruby
1/* 詳細ページ */ 2.prototype__wrapper{ 3 min-height: calc(100vh - 161px); 4} 5.prototype__hedding{ 6 font-size: 24px; 7 font-weight: bold; 8 text-align: center; 9} 10.prototype__user{ 11 display: block; 12 font-size: 16px; 13 color: #999; 14 text-align: center; 15 text-decoration: underline; 16 margin-bottom: 20px; 17} 18.prototype__user:hover{ 19 text-decoration: none; 20} 21.prototype__image{ 22 margin: 0 auto; 23 width: 250px; 24 height: 250px; 25 object-fit: cover; 26} 27.song__img { 28 width: 250px; 29 height: 250px; 30 object-fit: cover; 31} 32.song__detail{ 33 display: flex; 34 align-items: center; 35 flex-direction: column; 36 margin-bottom: 8px; 37} 38.detail__title{ 39 font-weight: bold; 40} 41.detail__lyric{ 42 white-space: pre-wrap; 43} 44.prototype__manage{ 45 display: flex; 46 justify-content: center; 47 padding-top: 16px; 48} 49.prototype__btn{ 50 display: block; 51 padding: 0.4em 1.6em; 52 font-size: 0.4em; 53 color: #999; 54 text-decoration: none; 55 user-select: none; 56 border: 1px #999 solid; 57 border-radius: 3px; 58 transition: 0.4s ease; 59 margin: 0 4px; 60} 61.prototype__btn:hover{ 62 color: #fff; 63 background: #999; 64} 65
試したこと
text-alignを試してみましたがcenterにしてもleftにしても
1行目の頭に空白が入ってしまうのは変わりませんでした。
現在掲載されているコードのどのあたりが「textareaの文字の改行が反映されるようにした」部分でしょうか?
説明不十分で失礼いたしました。
show.html.erb
```ruby
<div class="song__detail">
<p class="detail__title">歌詞</p>
<p class="detail__lyric">
<%= @song.lyric %>
</p>
</div>
```
style.css
```ruby
.detail__lyric{
white-space: pre-wrap;
}
```
以上の箇所が該当箇所です。
よろしくお願い致します。
textareaの表示の話ではなくて、別のページのtextareaで入力された何らかのデータを<p>の中に表示するときの話でしょうか?
まずは song.lyric にどんなデータが入っているかの確認ですかね。
回答2件
あなたの回答
tips
プレビュー