swiper.jsで設置したスライダーのコンテンツにテキストを重ねたい
- 評価
- クリップ 0
- VIEW 2,967
前提・実現したいこと
初めて質問します。
よろしくお願いしたします。
ローカルの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
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+1
動くサンプル:https://jsfiddle.net/zhoodp7a/
動きますね。スーパーリロードを試してみてください。
【【みんなの知識 ちょっと便利帳】Webページを最新の状態で見る - ブラウザーのフルリロード、スーパーリロード方法】
http://www.benricho.org/Tips/page_reload/
【Chromeブラウザでスーパーリロードする方法 #Pistatium】
http://kimihiro-n.appspot.com/show/86002
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 89.99%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
質問への追記・修正、ベストアンサー選択の依頼
kei344
2017/12/31 14:34
質問文のコードはそれぞれコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
noritamako
2017/12/31 14:39
はじめまして、ご指摘ありがとうございます!こうすればよかったのですね。