jQueryスライドショー「bxSlider」のレイアウトをカスタマイズする際に注意すべきたったひとつのポイント
1年以上前の記事です。内容が古い可能性があります。
なんとも有名なjQueryを使用したスライドショー(スライダー)「bxSlider」ですが、
デザインがなかなか思うようにいかなくて嫌いになりそうになっていました。
が、その理由がわかったので報告したいと思います。
なお、 「bxSlider」の設置等に関しては以下のサイト等を参考にしてください。
■ jQuery Content Slider | Responsive jQuery Slider | bxSlider
□ jQueryスライドショー「bxslider」の使い方まとめ – NAVER まとめ
今回設置させていただいたスライドショー。
右上、通常の写真風な部分で「bxSlider」を使っています。
まず、先ほど紹介したサイトからHTML部分のみ抽出してみます。
<ul class="bxslider">
<li><img src="/images/pic1.jpg" /></li> <li><img src="/images/pic2.jpg" /></li>
<li><img src="/images/pic3.jpg" /></li>
<li><img src="/images/pic4.jpg" /></li>
</ul>
で、これをどのようにアレンジしてレイアウトしたかというと。
<ul class="bxslider" id="main_img">
<li><img src="/images/pic1.jpg" /></li> <li><img src="/images/pic2.jpg" /></li>
<li><img src="/images/pic3.jpg" /></li>
<li><img src="/images/pic4.jpg" /></li>
</ul>
と言った具合に、<ul>に対してIDを入れてwidth、marginやpadding、position:absolute等の指定をしていたわけです。
が、これが間違いでした。
なぜかは知らないけれど、最後のコマが白落ちしたり、
どうしても、右側にイメージがはみ出してしまったり、
他、いじればいじるほど問題が発生してしまい、いい加減、嫌になってきたわけです。
おそらく、「bxSlider」標準の「jquery.bxslider.css」 と、デザイン用に作ったCSSがお互い喧嘩してしまったのでしょう。
じっくりしっかり解析してやっていけばもしかしたらこのままでも解決したかもしれません。
ただ、この状態で頑張るよりも、HTMLの書き方を変えることでなんとも簡単に解決することができました。
こう書けばいい。
<div id="main_img">
<ul class="bxslider">
<li><img src="/images/pic1.jpg" /></li> <li><img src="/images/pic2.jpg" /></li>
<li><img src="/images/pic3.jpg" /></li>
<li><img src="/images/pic4.jpg" /></li>
</ul>
</div>
つまり、<ul>を<div>で囲んでそのDIVにwidth、marginやpadding、position:absolute等の指定をすればよかったんです
この場合、親子関係になるので喧嘩せず、「#main_img」に書いたレイアウト用のCSSにほぼ準じてスライダーが表示されるようになってくれます。
実は「bxSlider」は、<ul>、<li>をそれぞれ<div>に変えても動くのですが、
当初は<div>を使っていたため、なるべく<div>を入れ子にしたくなかったという理由から「class=”bxslider”」と同じところに「id=”main_img”」を書いたのです。
が、それがいかんかったわけですね。
ちなみに、自分の場合はページャーもコントローラーも表示させない設定にしています。
$(document).ready(function(){ $('.bxslider').bxSlider({
auto:true,
pager: false,
controls: false,
});
});
なお、こちらで横幅指定「slideWidth」の設定はする必要はありません。
■ 今日のまとめ ■
「bxSlider」でレイアウトをするときはスライダーの要素を<div>等で囲ってあげて、その<div>に対してCSSでレイアウトしてあげるとうまくいく。
覚えておきましょう。
アドセンス広告メイン
関連記事
-
-
日本では黄金比よりも白銀比。第2黄金比や青銅比なども
1年以上前の記事です。内容が古い可能性があります。黄金比っていう言葉はちょくちょ …
-
-
人気が出る写真の法則。人の顔はNG。背景は控えめに等
1年以上前の記事です。内容が古い可能性があります。インターネット上には数多くのデ …
-
-
WordPress(ワードプレス)の管理バーの高さを無視させたり、非表示にさせたりする方法
1年以上前の記事です。内容が古い可能性があります。WordPressでデザインを …
-
-
ネットで印刷、印刷通販の「グラフィック」を使ってみた【入稿編】
1年以上前の記事です。内容が古い可能性があります。さて、ここまでは驚くほど順調に …
-
-
Adobe AIRって何のこと?
1年以上前の記事です。内容が古い可能性があります。最近気になっている言葉「Ado …
-
-
livedoorブログで「Blackbird Pie」を使う方法
1年以上前の記事です。内容が古い可能性があります。まずは「Blackbird P …
-
-
「wonderfl」と「FlashDevelop」(ActionScript3.0勉強中! #5)
1年以上前の記事です。内容が古い可能性があります。最後に「プロからやさしく学ぶA …
-
-
佐々木岳久展「実存-内奥に谺する歪み」in宇都宮
1年以上前の記事です。内容が古い可能性があります。当ブログで何度か紹介させていた …
-
-
アメブロ(アメーバブログ)をちょっといじってみた
1年以上前の記事です。内容が古い可能性があります。先日、アメブロを本格的に始めた …
-
-
デザイン変えてみました(赤ちゃんバージョン)
1年以上前の記事です。内容が古い可能性があります。文字だけだとなんなのと「liv …
Comment
そもそも
と
ではスタイルを指定している対象が違う
「おそらく、「bxSlider」標準の「jquery.bxslider.css」 と、デザイン用に作ったCSSがお互い喧嘩してしまったのでしょう。」
いいえ、あなたのCSSの解釈が間違っているだけです。
そもそも付属してあるbxslider.cssでその辺の調整はできるのに何故新たにIDを付け加えなければならないのか疑問です。
失礼ですがこういう記事を書くのならもう少し勉強されてからの方がいいと思います。
WEB業界で働くものとして間違った情報が氾濫してほしくないのと、間違った情報でも参考にしてしまう人はたくさんいるので。