jQuery「slick.js」にて下記のような問題が出ています。
調べても答えがなかったので質問させてください。
下に文章の付いた画像をスライダーで複数表示したいのですが、カルーセル全体の幅に対してどうしても画像と文章が左寄りになってしまいます。画像だけのシングル表示の場合には問題がなく中央に表示されていました。
htmlとCSSを抜粋すると以下の通りです。
【html】
<div id="container">
<ul id="main_slider">
<li><a href="#"><img src="images/lazyfonz1.png" width="200px" height="200px"><time>2016.09.21</time><h2>xxxxxx</h2></a></li>
<li><a href="#"><img src="images/lazyfonz2.png" width="200px" height="200px"><time>2016.09.21</time><h2>xxxxxx</h2></a></li>
<li><a href="#"><img src="images/lazyfonz3.png" width="200px" height="200px"><time>2016.09.21</time><h2>xxxxxx</h2></a></li>
<li><a href="#"><img src="images/lazyfonz4.png" width="200px" height="200px"><time>2016.09.21</time><h2>xxxxxx</h2></a></li>
<li><a href="#"><img src="images/lazyfonz5.png" width="200px" height="200px"><time>2016.09.21</time><h2>xxxxxx</h2></a></li>
</ul>
</div>
【CSS】
ul {
list-style: none;
margin: 0;
padding: 0;
}
.container {
margin: 0 auto;
width: 100%;
max-width: 1024px;
height: auto;
position: relative;
overflow: hidden;
}
#main_slider {
margin: auto;
width: 900px;
height: auto;
}
【script】
<script>
$(function() {
$('#main_slider').slick({dots:true,slidesToShow: 3,slidesToScroll: 3,});
});
</script>
素人なりに色々調べたり試してみましたが上手くいきません。
よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
slick.jsは存じませんので、内容は知りません。
見た感じだけからの回答なのでヒントにでもなれば・・・
多分、これ(↓)のことだと思いますが、解説の例示ではDIV要素の構成で作られるのが作者の想定している対象のようです。
https://github.com/kenwheeler/slick/
なぜ、リスト形式になさっているのかよくわかりませんが、ご提示のHTMLをスライド化した時の構成は以下のようになっています。
※ 構成のみを示しています(詳細は省略)
※ <!-- *追加* -->はスライド化のために追加された要素
<ul id="main_slider">
<button class="slick-prev slick-arrow">Previous</button>
<div class="slick-list"> <!-- *追加* -->
<div class="slick-track"> <!-- *追加* -->
<li>~~</li> <!-- *追加* -->
<li>~~</li> <!-- *追加* -->
<li>~~</li> <!-- *追加* -->
<li>~~</li>
<li>~~</li>
<li>~~</li>
<li>~~</li>
<li>~~</li>
<li>~~</li> <!-- *追加* -->
<li>~~</li> <!-- *追加* -->
<li>~~</li> <!-- *追加* -->
</div> <!-- *追加* -->
</div> <!-- *追加* -->
<button class="slick-next slick-arrow">Next</button> <!-- *追加* -->
<ul class="slick-dots"> <!-- *追加* -->
<li id="slick-slide00">~</li> <!-- *追加* -->
<li id="slick-slide01">~</li> <!-- *追加* -->
</ul> <!-- *追加* -->
</ul>
見てもわかるように、文法違反の状態になってしまっているので、ブラウザが適宜判断して表示していることになります。
文法違反の場合の解釈は各ブラウザ依存なので、どのように表示されるかはブラウザまかせということになります。
・・・それはさておき、
>カルーセル全体の幅に対してどうしても画像と文章が左寄りになってしまいます。
左寄りに見えるだけで、センター配置になっているのではないかと思われます。
確認のため、ご提示のCSSに
ul li { border:1px solid red; }
などを追加してみれば、li要素は中央配置になっていることがわかると思います。
li要素のサイズ(幅)がなぜこのように解釈されるのかは、slickのスクリプトを停止した状態で表示してみればわかるのではないかと思います。
以前に見た解説でリスト形式になっていたのでしていましたが、問題がありそうなので修正してみます。
教えて頂いたことで色々修正しながら試してみたいと思います。
悩んでいたので助かりました。
丁寧な回答ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS 【HTML】【CSS】【Swiper】 元の画像は横1200×縦600なのですが、実際のサイト上に反 5 2022/07/16 13:57
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リストマーカーをボックス内に...
-
cssの display: flex;で横並び...
-
「CSS」リストの2段組どのよう...
-
リストの数字のフォントサイズ...
-
li 長さ指定
-
[CSS3] last-childについて
-
メニューの折り畳み階層化について
-
リストの回り込みについて(マ...
-
header と nav の隙間を埋めたい。
-
<ul>と<li>リストマークを消す...
-
画像はDIVタグとPタグの両方で...
-
list-style-type部分だけ大きく...
-
ドロップダウンメニューが隠れ...
-
<ul>~</ul>が二つ続くと間に改...
-
<table>の高さ固定。情報増加時...
-
<ol><li> 左側にスペースがで...
-
ulタグやliタグの中でbrタグ...
-
ページを開いているときのリン...
-
liタグを改列させたい。
-
リンク文字同士の間隔を開ける...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
番号付きリスト(<Ol><Li>・・...
-
liタグの中に<p>タグやら<dl>を...
-
<table>の高さ固定。情報増加時...
-
レスポンシブWebデザインでリン...
-
<ul><li></li></ul>にするメリ...
-
リストの数字のフォントサイズ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
divタグ内のコンテンツが重なっ...
-
画像にリンクを張ると画像がず...
-
複数行にまたがる括弧を表示し...
-
html <ul></ul>の並びで一行空...
-
ページを開いているときのリン...
-
HTML5のfooterに見出しを付けて...
-
html/cssの、navを2段にする...
-
<ul>~</ul>が二つ続くと間に改...
-
htmlの<ol>タグで、数字などを...
-
リンク文字同士の間隔を開ける...
-
CSSでつくったメニューのアニメ...
おすすめ情報