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

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

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

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

SCSS

SCSSは、SassのCSSメタ言語です。Webページのスタイルを指定するCSSを効率的に記述することができます。ネストと呼ばれる入れ子構造で記述するため、CSSの全体の記述量を減らせる点が特徴です。さらに変数も利用できるため、変更や修正の際に少ない作業量で対応することもできます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

602閲覧

スライドショーする画像をの横幅をウインドウの幅にピッタリ合わせたいです。

ghtew2

総合スコア245

CSS3

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

SCSS

SCSSは、SassのCSSメタ言語です。Webページのスタイルを指定するCSSを効率的に記述することができます。ネストと呼ばれる入れ子構造で記述するため、CSSの全体の記述量を減らせる点が特徴です。さらに変数も利用できるため、変更や修正の際に少ない作業量で対応することもできます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2023/04/10 07:58

編集2023/04/10 08:05

企業のHPのTOP画面にあるような、画像をスライドショーさせるコードを書いているのですが、画像がスライドショーするとき、各画像の横幅がウインドウの幅ピッタリに表示させたいのですが上手くいきません。
.slide-item {width: 600px;}を500pxに変更すると、モバイル500pxピッタリの画面では各画像5枚とも幅は合いますが、モバイル380pxの幅の時などの画面の場合もスライドショーする各画像の横幅をウインドウの幅に合わせたいです。

回答よろしくお願いいたします。
下のコードは画像5枚をCSSアニメーションでスライドショーするコードになります。

html

1<div id="css-slider"> 2 <div class="slider-wrapper"> 3 <div class="slide-item"> 4 <img src="officelyrics/office1.png" class="ex" alt="ひよこ" > 5 </div> 6 <div class="slide-item"> 7 <img src="officelyrics/hptop2.png" class="ex" alt="ひよこ" > 8 </div> 9 <div class="slide-item"> 10 <img src="officelyrics/24736572_m.png" class="ex" alt="ひよこ" > 11 </div> 12 <div class="slide-item"> 13 <img src="officelyrics/1c.png" class="ex" alt="ひよこ" > 14 </div> 15 <div class="slide-item"> 16 <img src="officelyrics/HP6b.png" class="ex" alt="ひよこ" > 17 </div> 18 </div> 19 </div>

css

1@media screen and (max-width: 500px) { 2 3 #css-slider { 4 width: 100%;/* スライド自体の合計の長さ*/ 5 height: 200px; 6 overflow: hidden; 7} 8 9.slide-item { 10 width: 600px; 11 height: 200px; 12 float: left; 13 position: relative; 14} 15 16 17.slider-wrapper { 18 width: 500%;/* 画像をスライドさせる枚数500%なら5枚スライド*/ 19 position: relative; 20 left: 0; 21 will-change: transform; 22 animation: slider 20s infinite; 23} 24 25 26 27@keyframes slider { 28 0% { transform: translateX(0%); } 29 7% { transform: translateX(-7%); } 30 14% { transform: translateX(-14%); } 31 20% { transform: translateX(-20%); } 32 33 27% { transform: translateX(-27%); } 34 34% { transform: translateX(-34%); } 35 40% { transform: translateX(-40%); } 36 37 47% { transform: translateX(-47%); } 38 54% { transform: translateX(-54%); } 39 60% { transform: translateX(-60%); } 40 41 67% { transform: translateX(-67%); } 42 74% { transform: translateX(-74%); } 43 80% { transform: translateX(-80%); } 44 45 87% { transform: translateX(-87%); } 46 94% { transform: translateX(-94%); } 47 100% { transform: translateX(0%); } 48 49} 50 51.ex{ 52 width: 100%; 53}

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

スライド画像(.slide-item)が5枚なので、その幅を親要素(.slider-wrapper)の幅の1/5(20%)に設定すればいいでしょう。

css

1 #css-slider { 2 width: 100%;/* スライド自体の幅を画面幅に*/ 3 height: 200px; 4 overflow: hidden; 5} 6 7.slide-item { 8 width: 20%; /* 親要素の1/5の幅 */ 9 height: 200px; 10 float: left; 11 position: relative; 12} 13 14.slider-wrapper { 15 width: 500%;/* 画像をスライドさせる枚数500%なら5枚スライド*/ 16 position: relative; 17 left: 0; 18 will-change: transform; 19 animation: slider 20s infinite; 20}

CodePen サンプル

投稿2023/04/11 00:55

hatena19

総合スコア33715

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ghtew2

2023/04/11 06:50

ありがとうございました。上記のコードで解決できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問