あるdiv要素にwidthを設定するとその横に意図しないmarginが発生します。
もちろんドキュメント全体にmargin:0をかけています。
css
1* { 2 margin: 0; 3 padding: 0; 4 box-sizing: border-box; 5}
画像のような意図しないmarginはなぜ起こるのか?
これを解消するためにはどうすればいいのかご教示いただけないでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
marginができているというわけではなくて、ブロックレベル要素だからだと思います。
横並びにしたいのであれば、display: inline-block;
,display: flex;
などについて調べると良いと思います。
投稿2020/05/07 06:41
総合スコア441
0
自己解決
結論から言うと単純なケアレスミスでした。
reactでループかけて表示する際、親要素までループをしていたために
flexの横並びが効かなかったみたいです。
flexかける親要素をループの外に記述したら無事アイテムが横並びになってくれました。
修正前
js
1{list.map(item => ( 2 <div className="post-list">{/* 中に入っているのが問題 */} 3 <div className="inner-post-list" key={item.docId + String(new Date())}> 4 <div className="post-text"> 5 <div className="post-msg">{item.msg}</div> 6 <button 7 className="delete-icon" 8 onClick={() => handleDelete(item.docId)} 9 > 10 <img src={DeleteIcon} alt="delete" /> 11 </button> 12 </div> 13 </div> 14 </div> 15 ))}
修正後
解決法
この場合でいうと「post-listクラス」をループの外でラップする。
js
1<div className="post-list">{/* ループの外に出す */} 2 {list.map(item => ( 3 <div className="inner-post-list" key={item.docId + String(new Date())}> 4 <div className="post-text"> 5 <div className="post-msg">{item.msg}</div> 6 <button 7 className="delete-icon" 8 onClick={() => handleDelete(item.docId)} 9 > 10 <img src={DeleteIcon} alt="delete" /> 11 </button> 12 </div> 13 </div> 14 ))} 15 </div>
投稿2020/05/07 09:04
総合スコア226
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。