質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

解決済

<img>タグの画像を画像比をキープしつつ、背景全画面で表示したい。

UKYO9311
UKYO9311

総合スコア0

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

1回答

0評価

0クリップ

22閲覧

投稿2019/07/23 07:31

前提・実現したいこと

スライダーのプラグイン、スリックスライダーを使ってトップページを実装しています。
実現したいことは画像比をキープしつつ、全画面に画像を広げたいです。イメージ的には<img>タグでbackground-image: cover;みたいな感じにしたいです。

発生している問題・エラーメッセージ

現在全画面には広がっているのですが、横に広げると画像が横に引き伸びてしまいます。逆に狭めるとほそーくなってしまいます。

お手数おかけしますがご回答お待ちしております。( ; ; )

該当のソースコード

html

<div class="slider-wrapper"> <div class="slider"> <div> <img class="slick-slider-img" alt="Alt" src="images/top_kv1-1.jpg" /> </div> <div> <img class="slick-slider-img" alt="Alt" src="images/top_kv1-1.jpg" /> </div> <div> <img class="slick-slider-img" alt="Alt" src="images/top_kv1-1.jpg" /> </div> <div> <img class="slick-slider-img" alt="Alt" src="images/top_kv1-1.jpg" /> </div> </div> <div class="slider-progress"> <div class="progress"></div> </div> </div>

css

/* Slider */ .slider-wrapper{ position: relative; overflow: hidden; width: 100%; } .slick-slider { position: relative; display: block; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: none; touch-action: none; -webkit-tap-highlight-color: transparent; width: 100%; height: 100vh; } .slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; } .slick-list:focus { outline: none; } .slick-list.dragging { cursor: pointer; cursor: hand; } .slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img { height: 100vh; } .slick-track { position: relative; left: 0; top: 0; display: block; zoom: 1; } .slick-track:before, .slick-track:after { content: ""; display: table; } .slick-track:after { clear: both; } .slick-loading .slick-track { visibility: hidden; } .slick-slide { float: left; height: 100%; min-height: 1px; display: none; } .slick-slide img { width: 100%; height: 100vh; margin-top: 82px; } .slick-slide.dragging img { pointer-events: none; width: 100%; height: 100vh; } .slick-initialized .slick-slide { display: block; } .slick-loading .slick-slide { visibility: hidden; } .slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; } .slick-slide > .slick-slider-img { position: relative; display: block; width: 100%; height: 100vh; } .slick-slide .image { /*height: 180px;*/ height: 100vh; width: 100%; margin: 0 auto; } .slick-slide img { display: block; width: 100%; height: 100vh; } .slick-slide img.slick-loading { display: none; } .slick-prev{ background: #DDD; border: none; border-radius: none; position: absolute; top: 40%; transform: translateY(-20%); left: 100px; padding: 0.25em 0.5em; box-shadow: 2px 2px 4px rgba(0,0,0,0.25); z-index: 400; } .slick-next{ background: #DDD; border: none; border-radius: none; position: absolute; top: 40%; transform: translateY(-20%); right: 100px; padding: 0.25em 0.5em; box-shadow: 2px 2px 4px rgba(0,0,0,0.25); z-index: 400; } /* progress bar */ .slider-progress { width: 25%; height: 2px; background: rgba(255,255,255,0.5); position: absolute; bottom: 100px; left: 30px; } .slider-progress .progress { width: 0%; height: 5px; background: #fff; }

js

$(document).ready(function() { var time = 2; var $bar, $slick, isPause, tick, percentTime; $slick = $('.slider'); $slick.slick({ arrows: true, speed: 1200, adaptiveHeight: false }); $bar = $('.slider-progress .progress'); function startProgressbar() { resetProgressbar(); percentTime = 0; isPause = false; tick = setInterval(interval, 30); } function interval() { if (isPause === false) { percentTime += 1 / (time + 0.1); $bar.css({ width: percentTime + "%" }); if (percentTime >= 100) { $slick.slick('slickNext'); startProgressbar(); } } } function resetProgressbar() { $bar.css({ width: 0 + '%' }); clearTimeout(tick); } startProgressbar(); $('.slick-next, .slick-prev').click(function() { startProgressbar(); }); });

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。