teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

補足を受けて修正

2019/07/01 16:40

投稿

mepon
mepon

スコア480

answer CHANGED
@@ -13,4 +13,76 @@
13
13
  }
14
14
  ```
15
15
  実際はどうなってるか分かりませんが`text-align:center;`も効いてないような気がするので
16
- こっちも`p要素`に入れるといいかもしれません。
16
+ こっちも`p要素`に入れるといいかもしれません。
17
+
18
+
19
+
20
+ 追記やその他回答を受けて
21
+ ---
22
+ dit.さんが仰るようにtableで組めるのであればそれに越したことはありません。
23
+ どうしても`div`で組みたい場合の回答をします。
24
+
25
+ まず、提示されたコードでは`display:inline-block`のため
26
+ 要素が横並びとなり、縦積みにならないので**再現しません。**
27
+ そして、`div要素`に`width`が設定されていないが、
28
+ `text-align:center`が効いているため、要素は画面いっぱいなのに(borderも画面いっぱいになる)
29
+ テキスト要素のみが中央に寄った状態になり、画面が崩れています。
30
+ これは、ブロック要素を動かすのに`text-align`は使えないってやつです。
31
+
32
+ 上記を踏まえて、修正したコードです。
33
+ ```HTML
34
+ <div class="infomation_box">
35
+ <p class="left_info_box">来院目的</p>
36
+ <p class="right_info_box">初めての来院(初めて〇〇〇動物病院に来院さ…</p>
37
+ </div>
38
+ <div class="infomation_box top_border_none">
39
+ <p class="left_info_box">希望日時</p>
40
+ <p id="preffered_date" class="right_info_box">2019年06月15日(土)10時30分</p>
41
+ </div>
42
+ ```
43
+ ```CSS
44
+ .infomation_box{
45
+ /*text-align:center;*/
46
+ border: 1px solid orange;
47
+ height:40px;
48
+ width:30%; /*要素の幅を指定する*/
49
+ margin-left:auto;
50
+ margin-right:auto;
51
+ }
52
+ .top_border_none {
53
+ border-top-style: none;
54
+ }
55
+ .left_info_box{
56
+ display: inline-block;
57
+ background-color: #ffce75;
58
+ border-right: 1px solid orange;
59
+ width: 165px;
60
+ padding: 3px 10px;
61
+ border-bottom: orange;
62
+ font-weight: bold;
63
+ font-size: 14px;
64
+ line-height: 2.5;
65
+ text-align: right;
66
+ height:34px;
67
+ }
68
+ .right_info_box{
69
+ display: inline-block;
70
+ font-size: 14px;
71
+ margin-left: 7px;
72
+ margin-right: 21px;
73
+ margin-left: 7px;
74
+ margin-top: 10px;
75
+ margin-bottom: 9px;
76
+ }
77
+ ```
78
+
79
+ 変更点は、`div要素`を2個に分ける事で縦積みにしてます。
80
+ 縦積みにすることで中央の`border`が被って濃くなってしまうため
81
+ 下段`div要素`に対し`border-top-style: none;`を設定することで
82
+ `border`の被りを無くしています。
83
+
84
+ `div要素`を画面中央に配置するために、widthを設定し(ここはあとで調整してください)
85
+ marginをautoにすることで要素を画面中央にもってくるようにしました。
86
+
87
+ [Codepenサンプル](https://codepen.io/anon/pen/YoaVbX)
88
+ [上記コードのサンプルです]