質問編集履歴

1

変種デスクトップ

2019/06/11 14:16

投稿

hoge_nakatani
hoge_nakatani

スコア63

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,301 @@
1
+ ```ここに言語を入力
2
+
3
+ =========
4
+
5
+ HTML
6
+
7
+ =========
8
+
9
+
10
+
11
+
12
+
13
+ <nav class="NavMenu">
14
+
15
+ <ul>
16
+
17
+ <li><a href="#">Menu1</a></li>
18
+
19
+ <li><a href="#">Menu2</a></li>
20
+
21
+ <li><a href="#">Menu3</a></li>
22
+
23
+ <li><a href="#">Menu4</a></li>
24
+
25
+ <li><a href="#">Menu5</a></li>
26
+
27
+ </ul>
28
+
29
+ </nav>
30
+
31
+ <!-- ハンバーガーメニュー部分 -->
32
+
33
+ <div class="Toggle">
34
+
35
+ <span></span>
36
+
37
+ <span></span>
38
+
39
+ <span></span>
40
+
41
+ </div>
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+ =========
50
+
51
+ CSS
52
+
53
+ =========
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ @media screen and (max-width:960px){
62
+
63
+ /*ナビメニューのスタイルを指定*/
64
+
65
+ nav.NavMenu{
66
+
67
+ position: fixed; /*表示位置を固定*/
68
+
69
+ z-index: 2; /*重ね順を変更*/
70
+
71
+ top: 0; /*表示位置を指定*/
72
+
73
+ left: 0; /*表示位置を指定*/
74
+
75
+ background: #fff;/*背景を白にする*/
76
+
77
+ color: #000; /*文字色を黒にする*/
78
+
79
+ text-align: center; /*テキストを中央揃え*/
80
+
81
+ width: 100%; /*全幅表示*/
82
+
83
+ transform: translateY(-100%); /*ナビを上に隠す*/
84
+
85
+ transition: all 0.6s; /*アニメーションの時間を指定*/
86
+
87
+ }
88
+
89
+
90
+
91
+ nav.NavMenu ul{
92
+
93
+ background: #ccc; /*背景をグレーにする*/
94
+
95
+ width: 100%;
96
+
97
+ margin: 0 auto;
98
+
99
+ padding: 0;
100
+
101
+ }
102
+
103
+
104
+
105
+ nav.NavMenu ul li{
106
+
107
+ font-size: 1.1em;
108
+
109
+ list-style-type: none;
110
+
111
+ padding: 0;
112
+
113
+ width: 100%;
114
+
115
+ border-bottom: 1px dotted #333;
116
+
117
+ }
118
+
119
+
120
+
121
+ nav.NavMenu ul li:last-child{
122
+
123
+ padding-bottom: 0;
124
+
125
+ border-bottom: none; /*最後のメニュー項目のみ下線を消す*/
126
+
127
+ }
128
+
129
+
130
+
131
+ nav.NavMenu ul li a{
132
+
133
+ display: block; /*クリックできる領域を広げる*/
134
+
135
+ color: #000;
136
+
137
+ padding: 1em 0;
138
+
139
+ }
140
+
141
+ /*トグルボタンが押されたときに付与するクラス*/
142
+
143
+ nav.NavMenu.active{
144
+
145
+ transform: translateY(0%);
146
+
147
+ }
148
+
149
+ /*トグルボタンのスタイルを指定*/
150
+
151
+ .Toggle {
152
+
153
+ display: block;
154
+
155
+ position: fixed; /* bodyに対しての絶対位置指定 */
156
+
157
+ right: 13px;
158
+
159
+ top: 12px;
160
+
161
+ width: 42px;
162
+
163
+ height: 42px;
164
+
165
+ cursor: pointer;
166
+
167
+ z-index: 3;
168
+
169
+ }
170
+
171
+
172
+
173
+ .Toggle span {
174
+
175
+ display: block;
176
+
177
+ position: absolute;
178
+
179
+ width: 30px;
180
+
181
+ border-bottom: solid 3px #000;
182
+
183
+ -webkit-transition: .35s ease-in-out; /*変化の速度を指定*/
184
+
185
+ -moz-transition: .35s ease-in-out; /*変化の速度を指定*/
186
+
187
+ transition: .35s ease-in-out; /*変化の速度を指定*/
188
+
189
+ left: 6px;
190
+
191
+ }
192
+
193
+
194
+
195
+ .Toggle span:nth-child(1) {
196
+
197
+ top: 9px;
198
+
199
+ }
200
+
201
+
202
+
203
+ .Toggle span:nth-child(2) {
204
+
205
+ top: 18px;
206
+
207
+ }
208
+
209
+
210
+
211
+ .Toggle span:nth-child(3) {
212
+
213
+ top: 27px;
214
+
215
+ }
216
+
217
+
218
+
219
+ /* 最初のspanをマイナス45度に */
220
+
221
+ .Toggle.active span:nth-child(1) {
222
+
223
+ top: 18px;
224
+
225
+ left: 6px;
226
+
227
+ -webkit-transform: rotate(-45deg);
228
+
229
+ -moz-transform: rotate(-45deg);
230
+
231
+ transform: rotate(-45deg);
232
+
233
+ }
234
+
235
+
236
+
237
+ /* 2番目と3番目のspanを45度に */
238
+
239
+ .Toggle.active span:nth-child(2),
240
+
241
+ .Toggle.active span:nth-child(3) {
242
+
243
+ top: 18px;
244
+
245
+ -webkit-transform: rotate(45deg);
246
+
247
+ -moz-transform: rotate(45deg);
248
+
249
+ transform: rotate(45deg);
250
+
251
+ }
252
+
253
+ }
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+ =========
262
+
263
+ JS
264
+
265
+ =========
266
+
267
+
268
+
269
+
270
+
271
+
272
+
273
+ $(function() {
274
+
275
+ $('.Toggle').click(function() {
276
+
277
+ $(this).toggleClass('active');
278
+
279
+
280
+
281
+ if ($(this).hasClass('active')) {
282
+
283
+ $('.NavMenu').addClass('active'); //クラスを付与
284
+
285
+ } else {
286
+
287
+ $('.NavMenu').removeClass('active'); //クラスを外す
288
+
289
+ }
290
+
291
+ });
292
+
293
+ });
294
+
295
+ ```
296
+
297
+
298
+
1
299
  下記のコードを実行すると、960px以下のときにnavがhamburgerメニューになるのですが
2
300
 
3
301
  ボタンを押してなくても、縮めたときの初動で、勝手に開いている状態になってしまってます。
@@ -9,299 +307,3 @@
9
307
 
10
308
 
11
309
  ====================================================================================
12
-
13
-
14
-
15
-
16
-
17
- =========
18
-
19
- HTML
20
-
21
- =========
22
-
23
-
24
-
25
-
26
-
27
- <nav class="NavMenu">
28
-
29
- <ul>
30
-
31
- <li><a href="#">Menu1</a></li>
32
-
33
- <li><a href="#">Menu2</a></li>
34
-
35
- <li><a href="#">Menu3</a></li>
36
-
37
- <li><a href="#">Menu4</a></li>
38
-
39
- <li><a href="#">Menu5</a></li>
40
-
41
- </ul>
42
-
43
- </nav>
44
-
45
- <!-- ハンバーガーメニュー部分 -->
46
-
47
- <div class="Toggle">
48
-
49
- <span></span>
50
-
51
- <span></span>
52
-
53
- <span></span>
54
-
55
- </div>
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
- =========
64
-
65
- CSS
66
-
67
- =========
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
- @media screen and (max-width:960px){
76
-
77
- /*ナビメニューのスタイルを指定*/
78
-
79
- nav.NavMenu{
80
-
81
- position: fixed; /*表示位置を固定*/
82
-
83
- z-index: 2; /*重ね順を変更*/
84
-
85
- top: 0; /*表示位置を指定*/
86
-
87
- left: 0; /*表示位置を指定*/
88
-
89
- background: #fff;/*背景を白にする*/
90
-
91
- color: #000; /*文字色を黒にする*/
92
-
93
- text-align: center; /*テキストを中央揃え*/
94
-
95
- width: 100%; /*全幅表示*/
96
-
97
- transform: translateY(-100%); /*ナビを上に隠す*/
98
-
99
- transition: all 0.6s; /*アニメーションの時間を指定*/
100
-
101
- }
102
-
103
-
104
-
105
- nav.NavMenu ul{
106
-
107
- background: #ccc; /*背景をグレーにする*/
108
-
109
- width: 100%;
110
-
111
- margin: 0 auto;
112
-
113
- padding: 0;
114
-
115
- }
116
-
117
-
118
-
119
- nav.NavMenu ul li{
120
-
121
- font-size: 1.1em;
122
-
123
- list-style-type: none;
124
-
125
- padding: 0;
126
-
127
- width: 100%;
128
-
129
- border-bottom: 1px dotted #333;
130
-
131
- }
132
-
133
-
134
-
135
- nav.NavMenu ul li:last-child{
136
-
137
- padding-bottom: 0;
138
-
139
- border-bottom: none; /*最後のメニュー項目のみ下線を消す*/
140
-
141
- }
142
-
143
-
144
-
145
- nav.NavMenu ul li a{
146
-
147
- display: block; /*クリックできる領域を広げる*/
148
-
149
- color: #000;
150
-
151
- padding: 1em 0;
152
-
153
- }
154
-
155
- /*トグルボタンが押されたときに付与するクラス*/
156
-
157
- nav.NavMenu.active{
158
-
159
- transform: translateY(0%);
160
-
161
- }
162
-
163
- /*トグルボタンのスタイルを指定*/
164
-
165
- .Toggle {
166
-
167
- display: block;
168
-
169
- position: fixed; /* bodyに対しての絶対位置指定 */
170
-
171
- right: 13px;
172
-
173
- top: 12px;
174
-
175
- width: 42px;
176
-
177
- height: 42px;
178
-
179
- cursor: pointer;
180
-
181
- z-index: 3;
182
-
183
- }
184
-
185
-
186
-
187
- .Toggle span {
188
-
189
- display: block;
190
-
191
- position: absolute;
192
-
193
- width: 30px;
194
-
195
- border-bottom: solid 3px #000;
196
-
197
- -webkit-transition: .35s ease-in-out; /*変化の速度を指定*/
198
-
199
- -moz-transition: .35s ease-in-out; /*変化の速度を指定*/
200
-
201
- transition: .35s ease-in-out; /*変化の速度を指定*/
202
-
203
- left: 6px;
204
-
205
- }
206
-
207
-
208
-
209
- .Toggle span:nth-child(1) {
210
-
211
- top: 9px;
212
-
213
- }
214
-
215
-
216
-
217
- .Toggle span:nth-child(2) {
218
-
219
- top: 18px;
220
-
221
- }
222
-
223
-
224
-
225
- .Toggle span:nth-child(3) {
226
-
227
- top: 27px;
228
-
229
- }
230
-
231
-
232
-
233
- /* 最初のspanをマイナス45度に */
234
-
235
- .Toggle.active span:nth-child(1) {
236
-
237
- top: 18px;
238
-
239
- left: 6px;
240
-
241
- -webkit-transform: rotate(-45deg);
242
-
243
- -moz-transform: rotate(-45deg);
244
-
245
- transform: rotate(-45deg);
246
-
247
- }
248
-
249
-
250
-
251
- /* 2番目と3番目のspanを45度に */
252
-
253
- .Toggle.active span:nth-child(2),
254
-
255
- .Toggle.active span:nth-child(3) {
256
-
257
- top: 18px;
258
-
259
- -webkit-transform: rotate(45deg);
260
-
261
- -moz-transform: rotate(45deg);
262
-
263
- transform: rotate(45deg);
264
-
265
- }
266
-
267
- }
268
-
269
-
270
-
271
-
272
-
273
-
274
-
275
- =========
276
-
277
- JS
278
-
279
- =========
280
-
281
-
282
-
283
-
284
-
285
-
286
-
287
- $(function() {
288
-
289
- $('.Toggle').click(function() {
290
-
291
- $(this).toggleClass('active');
292
-
293
-
294
-
295
- if ($(this).hasClass('active')) {
296
-
297
- $('.NavMenu').addClass('active'); //クラスを付与
298
-
299
- } else {
300
-
301
- $('.NavMenu').removeClass('active'); //クラスを外す
302
-
303
- }
304
-
305
- });
306
-
307
- });