###前提・実現したいこと
初めて質問します。
よろしくお願いしたします。
ローカルのwordpress環境で、swiperを使って、テーマにカルーセル風のスライダーを設置しました。
スライダーとしての動作は問題ありません。
そこで、コンテンツのタイトルをスライダーの画像の中央に黒の半透明ボックスを背景にして重ねようとしたのですが、chromeブラウザだけテキストのスタイルが適用されません。
他のブラウザ同様に表示させるにはどうしたらよいのでしょうか。
###発生している問題・エラーメッセージ
コンソールで見ると、テキスト部分のスタイルは
「==$0」となっていて、スタイルが適用されていない。
###該当のソースコード
HTML
<div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide"> <a href="http://***"><img src="a.jpg"></a> <p class="swiper-caption">テキスト</P> </div> </div> </div>
CSS(配布時のまま)
.swiper-container { margin: 0 auto; position: relative; overflow: hidden; list-style: none; padding: 0; /* Fix of Webkit flickering */ z-index: 1; } .swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-transition-property: -webkit-transform; transition-property: -webkit-transform; -o-transition-property: transform; transition-property: transform; transition-property: transform, -webkit-transform; -webkit-box-sizing: content-box; box-sizing: content-box; } .swiper-container-android .swiper-slide, .swiper-wrapper { -webkit-transform: translate3d(0px, 0, 0); transform: translate3d(0px, 0, 0); } .swiper-container-multirow > .swiper-wrapper { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .swiper-slide { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 100%; height: 100%; position: relative; -webkit-transition-property: -webkit-transform; transition-property: -webkit-transform; -o-transition-property: transform; transition-property: transform; transition-property: transform, -webkit-transform; }
/以下、テキストのために追加した部分/
.swiper-slide p.swiper-caption { z-index:1; position: absolute; color: #fff; font-weight:400; font-size: 1.5em; line-height:120%; top: 50%; left: 50%; -ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); margin:0; padding:5%; background-color: rgba(0, 0, 0, 0.6); -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
###試したこと
画像に文字を重ねるには、
親要素
position: relative; height:100%;
子要素
position: absolute;
を満たしていれば良いと調べました。
.swiper-slideは親要素を満たしていたので、テキストのpタグに子要素指定をしたのですが、chromeのみ適用されません。
divタグに変えたり、いろいろ試したのですが、駄目でした。
###補足情報(言語/FW/ツール等のバージョンなど)
swiper.jsのバージョン4.0.7
http://idangero.us/swiper/
確認環境
Windows7
確認ブラウザ
IE11
Firefox47.0.2
chrome63
回答1件
あなたの回答
tips
プレビュー