質問編集履歴

3

無し

2021/04/21 04:11

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- positionの闇について。
1
+ positionについて。
test CHANGED
@@ -11,3 +11,9 @@
11
11
 
12
12
 
13
13
  ![イメージ説明](0b81cd4f4e0363f8ae32eee3e4948c20.jpeg)
14
+
15
+
16
+
17
+ 回答して頂いた方々ありがとうございました。
18
+
19
+ 再度一から作り直すと問題が解決しました。

2

修正中

2021/04/21 04:10

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -4,550 +4,10 @@
4
4
 
5
5
  ### 前提・実現したいこと
6
6
 
7
- 下記画像のショップページ作成。
7
+ ショップページ部分作成。
8
8
 
9
- shoppage内で画像を好きな場所に配置)
9
+ ショップページ内で画像を好きな場所に配置)
10
10
 
11
11
 
12
12
 
13
- **理想↓**
14
-
15
- ![イメージ説明](4195f213f529df4b9fcb8bd609bdbba7.jpeg)
16
-
17
-
18
-
19
-
20
-
21
- **現実↓**
22
-
23
- ![イメージ説明](d4cbcaea76930af658b349d5622029a1.jpeg)
13
+ ![イメージ説明](0b81cd4f4e0363f8ae32eee3e4948c20.jpeg)
24
-
25
-
26
-
27
- ### 発生している問題・エラーメッセージ
28
-
29
-
30
-
31
- 発生している問題
32
-
33
- ```
34
-
35
- shop‐pageの親要素にposition:relative;を、
36
-
37
- 子要素にposition:absolute;を指定したところ、3つ目の画像から急に、下にある「google_map」の部分に引っ張られてしまいます。(左上揃いで)
38
-
39
-
40
-
41
- ```
42
-
43
- CSS
44
-
45
- ```
46
-
47
- .pc-shop {
48
-
49
- display: none;
50
-
51
- @media (min-width: 769px) {
52
-
53
- display: block;
54
-
55
- max-width: 1080px;
56
-
57
- margin: auto;
58
-
59
-
60
-
61
- }
62
-
63
- }
64
-
65
-
66
-
67
-
68
-
69
- .shop-images {
70
-
71
- position: relative;
72
-
73
- margin-bottom: 200px;
74
-
75
-
76
-
77
- .center {
78
-
79
- position: absolute;
80
-
81
- img {
82
-
83
- border-radius: 100px;
84
-
85
- }
86
-
87
- }
88
-
89
-
90
-
91
- .Lower-right {
92
-
93
- position: absolute;
94
-
95
- img {
96
-
97
- border-radius: 50px;
98
-
99
- }
100
-
101
- }
102
-
103
-
104
-
105
- .Upper-right {
106
-
107
- position: absolute; ←ここまでは何も問題はない。
108
-
109
- img {
110
-
111
- border-radius: 100px;
112
-
113
- }
114
-
115
- }
116
-
117
-
118
-
119
- .Lower-left {
120
-
121
- position: absolute; ←ここからabsoluteを入れると上の画像のように、shop-pageとaccess-pageがひとまとまりになってしまいます。
122
-
123
-
124
-
125
- img {
126
-
127
- z-index: 1000;
128
-
129
- border-radius: 100px;
130
-
131
- }
132
-
133
- }
134
-
135
-
136
-
137
- .Upper-left {
138
-
139
- position: absolute;
140
-
141
- img {
142
-
143
- border-radius: 65px;
144
-
145
- }
146
-
147
- }
148
-
149
-
150
-
151
- }
152
-
153
-
154
-
155
- .pc-text-fas {
156
-
157
- display: none;
158
-
159
- @media (min-width: 769px) {
160
-
161
- display: block;
162
-
163
- flex-direction: row-reverse;
164
-
165
- text-align: right;
166
-
167
-
168
-
169
- a {
170
-
171
- text-decoration: none;
172
-
173
- color: #240E03;
174
-
175
- }
176
-
177
- }
178
-
179
- }
180
-
181
-
182
-
183
- .PC-SHOP-ALL {
184
-
185
- @media (min-width: 769px) {
186
-
187
- }
188
-
189
- }
190
-
191
-
192
-
193
- ```
194
-
195
-
196
-
197
-
198
-
199
- ### 原因(推測)
200
-
201
- 原因は下のGoogleマップにposition:relative;が使われており、そこにshop-pageの画像に指定したabsoluteが引っ張られているのだと思います。
202
-
203
-
204
-
205
- ### その他
206
-
207
- なぜこのようなことが起きてしまっているのでしょうか。
208
-
209
- positonの闇を感じています。
210
-
211
-
212
-
213
- ### 追記 (アクセス部)
214
-
215
-
216
-
217
- HTML
218
-
219
- ```
220
-
221
-
222
-
223
- <section class="pc-access">
224
-
225
- <section class="access">
226
-
227
- <section class="access-text">
228
-
229
-
230
-
231
- <div class="information">
232
-
233
- <p><strong>-INFORMATION-</strong></p>
234
-
235
- </div>
236
-
237
-
238
-
239
- <br>
240
-
241
-
242
-
243
- <div class="close">
244
-
245
- <p><strong>CLOSE</strong></p>
246
-
247
- <p>毎週月曜日</p>
248
-
249
- </div>
250
-
251
-
252
-
253
- <br>
254
-
255
-
256
-
257
- <div class="openhouse">
258
-
259
- <p><strong>OPEN HOUSE</strong></p>
260
-
261
- <p>12:00 - 21:30</p>
262
-
263
- </div>
264
-
265
-
266
-
267
- <br>
268
-
269
-
270
-
271
- <div class="contact">
272
-
273
- <p><strong>CONTACT</strong></p>
274
-
275
- <p>Tell : 0120-000-000</p>
276
-
277
- <p>Mail : info@○○○.ne.com</p>
278
-
279
- </div>
280
-
281
- </section>
282
-
283
-
284
-
285
- <div id="google_map"></div>
286
-
287
- <script src=" //maps.googleapis.com/maps/api/js?key="-KEY-"></script>
288
-
289
- <script>
290
-
291
- function googleMap() {
292
-
293
- var latlng = new google.maps.LatLng(34.98769768804593, 135.75931326908082); /* 座標 */
294
-
295
- var myOptions = {
296
-
297
- zoom: 16,
298
-
299
- /* 拡大比率 */
300
-
301
- center: latlng,
302
-
303
- mapTypeControlOptions: { mapTypeIds: ['style', google.maps.MapTypeId.ROADMAP] }
304
-
305
- };
306
-
307
- var map = new google.maps.Map(document.getElementById('google_map'), myOptions);
308
-
309
- var markerOptions = {
310
-
311
- position: latlng,
312
-
313
- map: map,
314
-
315
- title: 'Fragile',
316
-
317
- /* タイトル */
318
-
319
- animation: google.maps.Animation.DROP /* アニメーション */
320
-
321
- };
322
-
323
- var marker = new google.maps.Marker(markerOptions);
324
-
325
- /* 取得スタイルの貼り付け */
326
-
327
- var styleOptions = [{
328
-
329
- "stylers ": [
330
-
331
- { "hue ": '#00A497' }
332
-
333
- ]
334
-
335
- }];
336
-
337
- var styledMapOptions = { name: '架空サイト' } /* 地図右上のタイトル */
338
-
339
- var sampleType = new google.maps.StyledMapType(styleOptions, styledMapOptions);
340
-
341
- map.mapTypes.set('style', sampleType);
342
-
343
- map.setMapTypeId('style');
344
-
345
- };
346
-
347
- google.maps.event.addDomListener(window, 'load', function() {
348
-
349
- googleMap();
350
-
351
- });
352
-
353
- </script>
354
-
355
- </section>
356
-
357
- ```
358
-
359
- CSS
360
-
361
- ```
362
-
363
- .access {
364
-
365
- margin: 0 20px 0 20px;
366
-
367
- @media (min-width: 769px) {
368
-
369
- display:flex;
370
-
371
- flex-direction: row-reverse;
372
-
373
- justify-content: center;
374
-
375
- }
376
-
377
- }
378
-
379
-
380
-
381
- .access-text {
382
-
383
- margin: 20px;
384
-
385
- justify-content: center;
386
-
387
- text-align: center;
388
-
389
- line-height: 30px;
390
-
391
- @media (min-width: 769px) {
392
-
393
- text-align: left;
394
-
395
- margin-left: 80px;
396
-
397
- line-height: 40px;
398
-
399
- align-items: center;
400
-
401
-
402
-
403
- }
404
-
405
-
406
-
407
- .information p,
408
-
409
- .close p,
410
-
411
- .openhouse p,
412
-
413
- .contact p {
414
-
415
- margin: 0;
416
-
417
- @media (min-width: 769px) {
418
-
419
- font-size: 30px;
420
-
421
-
422
-
423
- }
424
-
425
- }
426
-
427
- }
428
-
429
-
430
-
431
- #google_map {
432
-
433
- dispaly: none;
434
-
435
- width: 335px;
436
-
437
- height: 174px;
438
-
439
-
440
-
441
- @media (min-width: 769px) {
442
-
443
- display: block;
444
-
445
- width: 500px;
446
-
447
- height: 500px;
448
-
449
- }
450
-
451
- }
452
-
453
-
454
-
455
- .address p {
456
-
457
- text-align: center;
458
-
459
- font-size: 10px;
460
-
461
- margin-bottom: 90px;
462
-
463
- @media (min-width: 768px) {
464
-
465
- display:none;
466
-
467
- }
468
-
469
- }
470
-
471
-
472
-
473
- .pc-addressp p {
474
-
475
- display: none;
476
-
477
- @media (min-width: 768px) {
478
-
479
- display:block;
480
-
481
- }
482
-
483
- }
484
-
485
-
486
-
487
- small {
488
-
489
- display: none;
490
-
491
- @media (min-width: 768px) {
492
-
493
- display: block;
494
-
495
- font-size: 60%;
496
-
497
- margin-left: 85px;
498
-
499
- paddin-top: 20px;
500
-
501
- }
502
-
503
- }
504
-
505
-
506
-
507
-
508
-
509
- .pc-access {
510
-
511
- @media (min-width: 769px) {
512
-
513
- display: block;
514
-
515
- }
516
-
517
- }
518
-
519
-
520
-
521
- .pc-access-text {
522
-
523
- display: none;
524
-
525
- @media (min-width: 769px) {
526
-
527
- display: block;
528
-
529
- text-align: center;
530
-
531
- margin-bottom: 80px;
532
-
533
- font-weight: bold;
534
-
535
- }
536
-
537
- }
538
-
539
-
540
-
541
- ```
542
-
543
- デベロッパーで見た時のグーグルマップ
544
-
545
- ```
546
-
547
- <div id="google_map" style="position: relative; overflow: hidden;">
548
-
549
- <div style="height: 100%; width: 100%; position: absolute;
550
-
551
- top: 0px; left: 0px; background-color: rgb(229, 227, 223);">(以下略
552
-
553
- ```

1

アクセス部分を追記しました。

2021/04/21 04:04

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -207,3 +207,347 @@
207
207
  なぜこのようなことが起きてしまっているのでしょうか。
208
208
 
209
209
  positonの闇を感じています。
210
+
211
+
212
+
213
+ ### 追記 (アクセス部)
214
+
215
+
216
+
217
+ HTML
218
+
219
+ ```
220
+
221
+
222
+
223
+ <section class="pc-access">
224
+
225
+ <section class="access">
226
+
227
+ <section class="access-text">
228
+
229
+
230
+
231
+ <div class="information">
232
+
233
+ <p><strong>-INFORMATION-</strong></p>
234
+
235
+ </div>
236
+
237
+
238
+
239
+ <br>
240
+
241
+
242
+
243
+ <div class="close">
244
+
245
+ <p><strong>CLOSE</strong></p>
246
+
247
+ <p>毎週月曜日</p>
248
+
249
+ </div>
250
+
251
+
252
+
253
+ <br>
254
+
255
+
256
+
257
+ <div class="openhouse">
258
+
259
+ <p><strong>OPEN HOUSE</strong></p>
260
+
261
+ <p>12:00 - 21:30</p>
262
+
263
+ </div>
264
+
265
+
266
+
267
+ <br>
268
+
269
+
270
+
271
+ <div class="contact">
272
+
273
+ <p><strong>CONTACT</strong></p>
274
+
275
+ <p>Tell : 0120-000-000</p>
276
+
277
+ <p>Mail : info@○○○.ne.com</p>
278
+
279
+ </div>
280
+
281
+ </section>
282
+
283
+
284
+
285
+ <div id="google_map"></div>
286
+
287
+ <script src=" //maps.googleapis.com/maps/api/js?key="-KEY-"></script>
288
+
289
+ <script>
290
+
291
+ function googleMap() {
292
+
293
+ var latlng = new google.maps.LatLng(34.98769768804593, 135.75931326908082); /* 座標 */
294
+
295
+ var myOptions = {
296
+
297
+ zoom: 16,
298
+
299
+ /* 拡大比率 */
300
+
301
+ center: latlng,
302
+
303
+ mapTypeControlOptions: { mapTypeIds: ['style', google.maps.MapTypeId.ROADMAP] }
304
+
305
+ };
306
+
307
+ var map = new google.maps.Map(document.getElementById('google_map'), myOptions);
308
+
309
+ var markerOptions = {
310
+
311
+ position: latlng,
312
+
313
+ map: map,
314
+
315
+ title: 'Fragile',
316
+
317
+ /* タイトル */
318
+
319
+ animation: google.maps.Animation.DROP /* アニメーション */
320
+
321
+ };
322
+
323
+ var marker = new google.maps.Marker(markerOptions);
324
+
325
+ /* 取得スタイルの貼り付け */
326
+
327
+ var styleOptions = [{
328
+
329
+ "stylers ": [
330
+
331
+ { "hue ": '#00A497' }
332
+
333
+ ]
334
+
335
+ }];
336
+
337
+ var styledMapOptions = { name: '架空サイト' } /* 地図右上のタイトル */
338
+
339
+ var sampleType = new google.maps.StyledMapType(styleOptions, styledMapOptions);
340
+
341
+ map.mapTypes.set('style', sampleType);
342
+
343
+ map.setMapTypeId('style');
344
+
345
+ };
346
+
347
+ google.maps.event.addDomListener(window, 'load', function() {
348
+
349
+ googleMap();
350
+
351
+ });
352
+
353
+ </script>
354
+
355
+ </section>
356
+
357
+ ```
358
+
359
+ CSS
360
+
361
+ ```
362
+
363
+ .access {
364
+
365
+ margin: 0 20px 0 20px;
366
+
367
+ @media (min-width: 769px) {
368
+
369
+ display:flex;
370
+
371
+ flex-direction: row-reverse;
372
+
373
+ justify-content: center;
374
+
375
+ }
376
+
377
+ }
378
+
379
+
380
+
381
+ .access-text {
382
+
383
+ margin: 20px;
384
+
385
+ justify-content: center;
386
+
387
+ text-align: center;
388
+
389
+ line-height: 30px;
390
+
391
+ @media (min-width: 769px) {
392
+
393
+ text-align: left;
394
+
395
+ margin-left: 80px;
396
+
397
+ line-height: 40px;
398
+
399
+ align-items: center;
400
+
401
+
402
+
403
+ }
404
+
405
+
406
+
407
+ .information p,
408
+
409
+ .close p,
410
+
411
+ .openhouse p,
412
+
413
+ .contact p {
414
+
415
+ margin: 0;
416
+
417
+ @media (min-width: 769px) {
418
+
419
+ font-size: 30px;
420
+
421
+
422
+
423
+ }
424
+
425
+ }
426
+
427
+ }
428
+
429
+
430
+
431
+ #google_map {
432
+
433
+ dispaly: none;
434
+
435
+ width: 335px;
436
+
437
+ height: 174px;
438
+
439
+
440
+
441
+ @media (min-width: 769px) {
442
+
443
+ display: block;
444
+
445
+ width: 500px;
446
+
447
+ height: 500px;
448
+
449
+ }
450
+
451
+ }
452
+
453
+
454
+
455
+ .address p {
456
+
457
+ text-align: center;
458
+
459
+ font-size: 10px;
460
+
461
+ margin-bottom: 90px;
462
+
463
+ @media (min-width: 768px) {
464
+
465
+ display:none;
466
+
467
+ }
468
+
469
+ }
470
+
471
+
472
+
473
+ .pc-addressp p {
474
+
475
+ display: none;
476
+
477
+ @media (min-width: 768px) {
478
+
479
+ display:block;
480
+
481
+ }
482
+
483
+ }
484
+
485
+
486
+
487
+ small {
488
+
489
+ display: none;
490
+
491
+ @media (min-width: 768px) {
492
+
493
+ display: block;
494
+
495
+ font-size: 60%;
496
+
497
+ margin-left: 85px;
498
+
499
+ paddin-top: 20px;
500
+
501
+ }
502
+
503
+ }
504
+
505
+
506
+
507
+
508
+
509
+ .pc-access {
510
+
511
+ @media (min-width: 769px) {
512
+
513
+ display: block;
514
+
515
+ }
516
+
517
+ }
518
+
519
+
520
+
521
+ .pc-access-text {
522
+
523
+ display: none;
524
+
525
+ @media (min-width: 769px) {
526
+
527
+ display: block;
528
+
529
+ text-align: center;
530
+
531
+ margin-bottom: 80px;
532
+
533
+ font-weight: bold;
534
+
535
+ }
536
+
537
+ }
538
+
539
+
540
+
541
+ ```
542
+
543
+ デベロッパーで見た時のグーグルマップ
544
+
545
+ ```
546
+
547
+ <div id="google_map" style="position: relative; overflow: hidden;">
548
+
549
+ <div style="height: 100%; width: 100%; position: absolute;
550
+
551
+ top: 0px; left: 0px; background-color: rgb(229, 227, 223);">(以下略
552
+
553
+ ```