質問編集履歴
2
解決方法を
title
CHANGED
File without changes
|
body
CHANGED
@@ -80,4 +80,11 @@
|
|
80
80
|
|
81
81
|
|
82
82
|
同様の内容で解決した方は、何卒お知恵をお借り出来たら幸いです。
|
83
|
-
よろしくお願いいたします。
|
83
|
+
よろしくお願いいたします。
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
**【解決しました』
|
88
|
+
|
89
|
+
この現象はjqueryのバージョンは「1.11.x」だと起きるようです。
|
90
|
+
試しに「1.12.0」を使ってみたところ、空白がなくなりました。
|
1
起きている現象と希望を明確にしました
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
[Slick]responsive
|
1
|
+
[Slick]オプションのresponsiveを設定すると、スライドの0個目にdata-slick-index="0"のdivが自動的に生成されてしまう
|
body
CHANGED
@@ -1,56 +1,10 @@
|
|
1
|
-
###
|
1
|
+
### 状況
|
2
2
|
|
3
|
-
Slickスライダーで8枚のコンテンツ組み込
|
3
|
+
Slickスライダーで8枚のコンテンツ組み込んでいます。
|
4
|
+
使用しているバージョンは、slick-1.8.1です。
|
4
|
-
|
5
|
+
htmlで以下のような組み方をしてスライダーを作っています。
|
5
|
-
検索するなどして探したのですが解決策が見つからないので
|
6
|
-
こちらに書き込ませていただきました。
|
7
6
|
|
8
|
-
### 稼働状況
|
9
|
-
・PC版は全く問題ありません。動いていますし、空白もできません。
|
10
|
-
・responsiveの方も動くことは動きますが、1個目の前に空白ができます
|
11
|
-
・1個目の前にできた空白はこのようなソースが入っています
|
12
7
|
```
|
13
|
-
<div class="slick-track slick-slide slick-current slick-center" data-slick-index="0" aria-hidden="true" tabindex="0" style="width: 172px;">
|
14
|
-
<div class="slick-list"></div>
|
15
|
-
</div>
|
16
|
-
```
|
17
|
-
なぜ、ここにclass="slick-list"が生成されるかがわかりません。
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
### 現在のソース・設定状況
|
23
|
-
|
24
|
-
|
25
|
-
```
|
26
|
-
▼Slicl設定
|
27
|
-
|
28
|
-
<script>
|
29
|
-
$('.slider').slick({
|
30
|
-
arrows: true,
|
31
|
-
prevArrow:'<div class="prev arrow">PREV</div>',
|
32
|
-
nextArrow:'<div class="next arrow">NEXT</div>',
|
33
|
-
slidesToShow:4,
|
34
|
-
dot:false,
|
35
|
-
autoplay:false,
|
36
|
-
infinite:false,
|
37
|
-
responsive: [
|
38
|
-
{
|
39
|
-
breakpoint: 559,
|
40
|
-
settings: {
|
41
|
-
centerMode:true,
|
42
|
-
centerPadding:'25%',
|
43
|
-
slidesToShow:1
|
44
|
-
}
|
45
|
-
}
|
46
|
-
]
|
47
|
-
});
|
48
|
-
</script>
|
49
|
-
|
50
|
-
```
|
51
|
-
|
52
|
-
|
53
|
-
```
|
54
8
|
▼HTML
|
55
9
|
|
56
10
|
<div class="wraps clearfix slider">
|
@@ -62,19 +16,28 @@
|
|
62
16
|
<h3>タイトル</h3>
|
63
17
|
</a>
|
64
18
|
</div>
|
19
|
+
※これが合計8個並ぶ
|
65
20
|
|
66
|
-
※これが合計8個
|
67
21
|
</div>
|
68
22
|
|
69
23
|
```
|
70
24
|
|
25
|
+
こちら4枚表示の設定を行ったうえでスライドの動作が確認できました。
|
26
|
+
そして、オプションにあるresponsiveを設定し設定したブレイクポイントで1枚表示にしたところ、
|
27
|
+
4枚表示の際は1枚目のスライダーに「data-slick-index="0"」が設定されていたのに
|
28
|
+
responsive設定のスライダーでは、1枚目の前に空白のdivが自動的に生成され、
|
29
|
+
それに「data-slick-index="0"」が付けられててしまい、1枚目の前に空白のスライダーが出てきてしまいます。
|
30
|
+
生成される謎の空白はこのようなものです、。
|
71
31
|
|
32
|
+
```
|
33
|
+
<div class="slick-track slick-slide slick-current slick-center" data-slick-index="0" aria-hidden="true" tabindex="0" style="width: 172px;">
|
34
|
+
<div class="slick-list"></div>
|
35
|
+
</div>
|
72
36
|
|
37
|
+
この自動生成された空白を消すことはできないでしょうか。
|
73
38
|
|
74
|
-
### テストした内容
|
75
39
|
|
76
|
-
Slickの設定部分をresponsive:を外してみてテストしたら、それは問題なく動きました。
|
77
|
-
|
40
|
+
### slickの設定
|
78
41
|
|
79
42
|
```
|
80
43
|
<script>
|
@@ -82,18 +45,39 @@
|
|
82
45
|
arrows: true,
|
83
46
|
prevArrow:'<div class="prev arrow">PREV</div>',
|
84
47
|
nextArrow:'<div class="next arrow">NEXT</div>',
|
48
|
+
slidesToShow:4,
|
85
49
|
dot:false,
|
86
50
|
autoplay:false,
|
87
51
|
infinite:false,
|
52
|
+
responsive: [
|
53
|
+
{
|
54
|
+
breakpoint: 559,
|
55
|
+
settings: {
|
88
56
|
centerMode:true,
|
89
57
|
centerPadding:'25%',
|
90
|
-
|
58
|
+
slidesToShow:1
|
91
|
-
|
59
|
+
}
|
60
|
+
}
|
61
|
+
]
|
92
62
|
});
|
93
63
|
</script>
|
64
|
+
|
94
65
|
```
|
95
66
|
|
96
67
|
|
68
|
+
### テストした内容
|
97
69
|
|
70
|
+
・CSSで強制的に空白をdisplay:noneで非表示
|
71
|
+
→消えるが、slickとしては1枚あったことを認識しているため、今度は一番最後の8枚目の後ろに空白ができた
|
72
|
+
・responsiveの設定を基本の設定に書いてみる+responsiveの設定を外す
|
73
|
+
→PCでもレスポンシブサイズでも問題なかった。
|
74
|
+
|
75
|
+
|
76
|
+
### 解決方法推測+希望
|
77
|
+
|
78
|
+
上記テストから、responsiveの時に自動的に作られる謎のボックスが原因だと思うので、
|
79
|
+
これを作らないようにさせたいのですが、どのようにしたらよろしいでしょうか。
|
80
|
+
|
81
|
+
|
98
82
|
同様の内容で解決した方は、何卒お知恵をお借り出来たら幸いです。
|
99
83
|
よろしくお願いいたします。
|