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

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

新規登録して質問してみよう
ただいま回答率
85.35%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Q&A

解決済

1回答

1011閲覧

テキストラインの開始位置を揃えたまま中央寄せしたい

Kana-T

総合スコア5

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

0グッド

0クリップ

投稿2020/09/07 06:18

編集2020/09/17 01:02

前提・実現したいこと

テキストラインの開始位置を揃えたまま全体を中央に寄せたいです
金額の最後に「円」がある為、少し左にずれてしまっております。
こちらの左のズレをなくし、「内容」と「金額」の開始ラインを揃えたいです。
アドバイスをいただけると幸いです。

以下現在のイメージです
イメージ説明

該当のソースコード

HTML

1 <form className="add-form"> 2 <select onChange={typeHandler}> 3 <option value="inc">+</option> 4 <option value="exp">-</option> 5 </select> 6 <div className="add-text"> 7 <label>内容</label> 8 <input type="text" value={inputText} onChange={inputTextHandler} /> 9 </div> 10 <div className="add-amount"> 11 <label>金額</label> 12 <input type="number" value={inputAmount} onChange={inputAmountHandler}/> 13 <div>円</div> 14 </div> 15 <button className="add-btn" type="submit" onClick={submitItemHandler}>追加</button> 16 </form>

CSS

1.add-form { 2 background: var(--gray-color); 3} 4 5.add-text { 6 text-align: center; 7} 8 9.add-amount { 10 text-align: center; 11} 12 13.add-form label { 14 display: inline-block; 15 margin: 10px 0; 16 padding-right: 5px; 17} 18 19.add-amount > div { 20 display: inline-block; 21} 22 23form input[type="text"] ,input[type="number"] { 24 height: 40px; 25 width: 300px; 26 border: 1px solid #A9A9A9; 27 background: #fafafa; 28 border-radius: 3px; 29 color: #393939; 30}

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

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

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

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

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

guest

回答1

0

ベストアンサー

ご参考までに

Flexを利用してみる。
参考 mozilla

イメージ説明

書き直してみたスタイルシートです。

CSS

1.add-form { 2 margin: auto; 3 max-width: 500px; /* 最大幅 */ 4 background: var(--gray-color); 5} 6 7.add-text, 8.add-amount { 9 display: flex; 10 margin: 10px 0; 11} 12 13.add-form label { 14 display: flex; 15 align-items: center; 16 width: 40px; 17} 18 19.add-amount>div { 20 display: flex; 21 align-items: center; 22 justify-content: flex-end; 23 width: 25px; 24} 25 26form input[type="text"], 27form input[type="number"] { 28 height: 40px; 29 width: calc(100% - 71px); /* サイズを調整 */ 30 border: 1px solid #A9A9A9; 31 background: #fafafa; 32 border-radius: 3px; 33 color: #393939; 34}

投稿2020/09/17 02:26

編集2020/09/17 04:42
Create_NAYU

総合スコア101

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

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

Kana-T

2020/09/17 04:30

ありがとうございます!flexを使用ですね。 でもこれだとレスポンシブ対応で中央寄せしたいんですが、 スマホサイズによっては全体的に左寄せになってしまうので、そこを直したいです。
Create_NAYU

2020/09/17 04:44

可変サイズに対応に修正してみました。 .add-formの左右にmarign: auto; を設定しinputの横幅をclac()で調整。
Kana-T

2020/09/17 13:11

ありがとうございます。アドバイスを元に解決できました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問