回答編集履歴

3

おまけ追記

2022/09/11 09:16

投稿

hatena19
hatena19

スコア33722

test CHANGED
@@ -19,7 +19,7 @@
19
19
 
20
20
  ---
21
21
 
22
- 知りたい点①について
22
+ **知りたい点①について**
23
23
 
24
24
  dt dd の幅が余白も含めて100%かそれより若干少なめになるように設定します。
25
25
  ただし、その場合、paddingやborderの幅も計算にいれる必要が出てくるので、いろいろ複雑になってきます。
@@ -50,8 +50,38 @@
50
50
  }
51
51
  ```
52
52
 
53
- 知りたい点②について
53
+ **知りたい点②について**
54
54
  dl dd はブラウザデフォルトの左右マージンを持っていますが、それですね。
55
55
  それがあるために、幅が100%を超えて折り返されることになります。
56
56
 
57
57
  上記のコードは、全称セレクタで `margin: 0;` としてブラウザデフォルトのマージンをリセットしてます。
58
+
59
+ おまけ
60
+ ---
61
+ dt dl を flew-wrap で横並びする方法は上記のようにいろいろ複雑になります。
62
+ 今なら、grid を使う方法がお勧めですね。
63
+ dlの方で列幅を設定すれば、dt dd の幅の設定は不要になります。
64
+
65
+ コード例
66
+
67
+ ```css
68
+ * {
69
+ box-sizing: border-box;
70
+ margin: 0;
71
+ }
72
+
73
+ .news-list dl{
74
+ display: grid;
75
+ grid-template-columns: 150px 1fr;
76
+ padding: 0 50px;
77
+ margin-bottom: 20px;
78
+ }
79
+ .news-list dt{
80
+ border-bottom: solid 1px #c8c8c8;
81
+ padding: 15px;
82
+ }
83
+ .news-list dd{
84
+ padding: 15px;
85
+ border-bottom: solid 1px #c8c8c8;
86
+ }
87
+ ```

2

説明修正

2022/09/11 09:09

投稿

hatena19
hatena19

スコア33722

test CHANGED
@@ -19,7 +19,7 @@
19
19
 
20
20
  ---
21
21
 
22
- ①について
22
+ 知りたい点①について
23
23
 
24
24
  dt dd の幅が余白も含めて100%かそれより若干少なめになるように設定します。
25
25
  ただし、その場合、paddingやborderの幅も計算にいれる必要が出てくるので、いろいろ複雑になってきます。
@@ -50,7 +50,7 @@
50
50
  }
51
51
  ```
52
52
 
53
- ②について
53
+ 知りたい点②について
54
54
  dl dd はブラウザデフォルトの左右マージンを持っていますが、それですね。
55
55
  それがあるために、幅が100%を超えて折り返されることになります。
56
56
 

1

追記

2022/09/11 09:08

投稿

hatena19
hatena19

スコア33722

test CHANGED
@@ -16,3 +16,42 @@
16
16
  border-bottom: solid 1px #c8c8c8;
17
17
  }
18
18
  ```
19
+
20
+ ---
21
+
22
+ ①について
23
+
24
+ dt dd の幅が余白も含めて100%かそれより若干少なめになるように設定します。
25
+ ただし、その場合、paddingやborderの幅も計算にいれる必要が出てくるので、いろいろ複雑になってきます。
26
+ そこで `box-sizing: border-box;` を設定して幅をpaddingやborderの幅も含めて計算するように指定します。(この辺の説明は長くなるので検索して調べてください。)
27
+
28
+ コード例
29
+ ```css
30
+ * {
31
+ box-sizing: border-box;
32
+ margin: 0;
33
+ }
34
+ .news-list dl{
35
+ display: flex;
36
+ flex-wrap: wrap ;
37
+ padding: 0 50px;
38
+ margin-bottom: 20px;
39
+ }
40
+ .news-list dt{
41
+ width: 20%;
42
+ border-bottom: solid 1px #c8c8c8;
43
+ padding: 15px;
44
+ }
45
+ .news-list dd{
46
+ width: 80%;
47
+ padding: 15px;
48
+ border-bottom: solid 1px #c8c8c8;
49
+ margin: 0;
50
+ }
51
+ ```
52
+
53
+ ②について
54
+ dl dd はブラウザデフォルトの左右マージンを持っていますが、それですね。
55
+ それがあるために、幅が100%を超えて折り返されることになります。
56
+
57
+ 上記のコードは、全称セレクタで `margin: 0;` としてブラウザデフォルトのマージンをリセットしてます。