回答編集履歴

2

画像追加

2020/02/17 04:57

投稿

no1knows
no1knows

スコア3365

test CHANGED
@@ -363,3 +363,9 @@
363
363
  });
364
364
 
365
365
  ```
366
+
367
+ codepenで実行
368
+
369
+ ![イメージ説明](97312276ee442c1d9b82a7699d62f911.png)
370
+
371
+ ![イメージ説明](cd8d2946d9513dbd4664eff386c7b541.png)

1

追記

2020/02/17 04:57

投稿

no1knows
no1knows

スコア3365

test CHANGED
@@ -75,3 +75,291 @@
75
75
  </div>
76
76
 
77
77
  ```
78
+
79
+
80
+
81
+ 追記
82
+
83
+ ---
84
+
85
+
86
+
87
+ 下記にて期待した動作が確認できるかと思います。
88
+
89
+ x_xさんからも追記がありますように基本的には、参考サイトをベースに修正していくのが望ましいです。
90
+
91
+ またCSSの修正ポイントも追記しましたので、参考サイトと比べてみて下さい。
92
+
93
+
94
+
95
+ ```html
96
+
97
+ <div id="wrap">
98
+
99
+ <div id="tab1" class="tab selected">Tab 1</div>
100
+
101
+ <div id="tab2" class="tab">Tab 2</div>
102
+
103
+
104
+
105
+ <div id="container">
106
+
107
+ <div id="slide" class="">
108
+
109
+ <div id="first" class="box">
110
+
111
+ <p>Check this Out</p>
112
+
113
+ <div class="box-red"></div>
114
+
115
+ </div>
116
+
117
+ <div id="second" class="box"><p>TAB2</p>
118
+
119
+ <div class="flex"><!-- ここはFlexで横並び -->
120
+
121
+ <div class="box-blue"></div>
122
+
123
+ <div class="box-blue"></div>
124
+
125
+ </div>
126
+
127
+ </div>
128
+
129
+ </div>
130
+
131
+ </div>
132
+
133
+ </div>
134
+
135
+ ```
136
+
137
+
138
+
139
+ ```css
140
+
141
+ body, html {
142
+
143
+ margin: 0px;
144
+
145
+ padding: 0px;
146
+
147
+ width: 100%;
148
+
149
+ height:100%;
150
+
151
+ text-align: center;
152
+
153
+ }
154
+
155
+
156
+
157
+ #wrap {
158
+
159
+ width: 100%; //←この幅
160
+
161
+ margin: 0 auto;
162
+
163
+ margin-top: 10px;
164
+
165
+ }
166
+
167
+
168
+
169
+ .tab {
170
+
171
+ height: 40px;
172
+
173
+ width: 50%; //←この幅
174
+
175
+ line-height: 40px;
176
+
177
+ text-align: center;
178
+
179
+ font-size: 20pt;
180
+
181
+ float: left;
182
+
183
+ cursor: pointer;
184
+
185
+ }
186
+
187
+
188
+
189
+ .selected {
190
+
191
+ background-color: black;
192
+
193
+ color: white;
194
+
195
+ border: none;
196
+
197
+ }
198
+
199
+
200
+
201
+ #container {
202
+
203
+ position: relative;
204
+
205
+ width: 100%; //←この幅
206
+
207
+ height: 1000px; //←この高さ
208
+
209
+ overflow: hidden;
210
+
211
+ clear: left;
212
+
213
+ }
214
+
215
+
216
+
217
+ .box {
218
+
219
+ display: inline-block;
220
+
221
+ white-space: nowrap;
222
+
223
+ position: absolute;
224
+
225
+ width: 100%; //←この幅
226
+
227
+ height: 1000px; //←この高さ
228
+
229
+ line-height: 200px;
230
+
231
+ text-align: center;
232
+
233
+ font-size: 28pt;
234
+
235
+ cursor: pointer;
236
+
237
+ }
238
+
239
+
240
+
241
+ #first {
242
+
243
+ top: 0px;
244
+
245
+ left: 0px;
246
+
247
+ }
248
+
249
+
250
+
251
+ #second {
252
+
253
+ top: 0px;
254
+
255
+ left: 100%; //←この移動距離
256
+
257
+ }
258
+
259
+
260
+
261
+ #slide {
262
+
263
+ transition: transform 1s ease-in-out 0s;
264
+
265
+ -moz-transition: -moz-transform 1s ease-in-out 0s;
266
+
267
+ -webkit-transition: -webkit-transform 1s ease-in-out 0s;
268
+
269
+ }
270
+
271
+
272
+
273
+ .move-to-second {
274
+
275
+ transform: translateX(-100%); //←この移動距離
276
+
277
+ -moz-transform: translateX(-100%); //←この移動距離
278
+
279
+ -webkit-transform: translateX(-100%); //←この移動距離
280
+
281
+ }
282
+
283
+
284
+
285
+ .move-to-first {
286
+
287
+ transform: translateX(0px);
288
+
289
+ -moz-transform: translateX(0px);
290
+
291
+ -webkit-transform: translateX(0px);
292
+
293
+ }
294
+
295
+
296
+
297
+ .flex{
298
+
299
+ display:flex; //←これで横並び
300
+
301
+ }
302
+
303
+ .box-red{
304
+
305
+ height:80px;
306
+
307
+ width:80px;
308
+
309
+ border:2px solid black;
310
+
311
+ background-color:red;
312
+
313
+ }
314
+
315
+ .box-blue{
316
+
317
+ height:80px;
318
+
319
+ width:80px;
320
+
321
+ border:2px solid black;
322
+
323
+ background-color:blue;
324
+
325
+ }
326
+
327
+ ```
328
+
329
+
330
+
331
+ ```jQuery
332
+
333
+ $(document).on('turbolinks:load', function() {
334
+
335
+ $("#tab1").click(moveToFirst);
336
+
337
+ $("#tab2").click(moveToSecond);
338
+
339
+
340
+
341
+ function moveToFirst() {
342
+
343
+ $("#slide").attr('class', 'move-to-first');
344
+
345
+ $(".tab").attr('class', 'tab');
346
+
347
+ $("#tab1").attr('class', 'tab selected');
348
+
349
+ }
350
+
351
+
352
+
353
+ function moveToSecond() {
354
+
355
+ $("#slide").attr('class', 'move-to-second');
356
+
357
+ $(".tab").attr('class', 'tab');
358
+
359
+ $("#tab2").attr('class', 'tab selected');
360
+
361
+ }
362
+
363
+ });
364
+
365
+ ```