前提・実現したいこと
HTML, CSSを使用してスライドショーを作成しましたが、画像の上の部分に細い余白ができてしまいます。この余白を消す方法はありますでしょうか。
初心者で分からない事だらけです。ご教授頂けたら幸いです。
発生している問題・エラーメッセージ
該当のソースコード
html
1<header></header> 2 3<main> 4 <div class="slide"> 5 <img src=""> <!-- 縦横比9:16の画像を使用しています --> 6 <img src=""> 7 <img src=""> 8 </div> 9</main>
CSS
1header { 2 height: 10px; 3 background-color: black; /* headerの値に大きな意味はありません。 */ 4} 5 6.slide { 7 position: relative; 8 overflow: hidden; 9 text-align: center; 10 margin-left: auto; 11 margin-right: auto; 12 width: 800px; /* 縦横比9:16の画像を使用しています */ 13 height: 450px; 14} 15 16.slide img { 17 position: absolute; 18 vertical-align: bottom; 19 top: 50%; 20 left: 50%; 21 transform: translate(-50%, -50%); 22 width: 800px; 23 height: 100%; 24 opacity: 0; 25 animation :slideshow 18s linear infinite; 26} 27 28@keyframes slideshow{ 290%{ 30 opacity: 0; 31} 32 3310%{ 34 opacity: 1; 35} 36 3728%{ 38 opacity: 1 39} 40 4138%{ 42 opacity: 0; 43} 44 45100%{ 46 opacity: 0; 47} 48} 49 50.slide img:nth-child(2){ 51 animation-delay: 6s; 52} 53 54.slide img:last-child{ 55 animation-delay: 12s; 56}
試したこと
imgタグに
margin: 0;
padding: 0;
vertical-align: bottom;
display: block;
などを試しましたが解決しませんでした。
補足情報(FW/ツールのバージョンなど)
なし
こんにちは。質問内のコードで「画像の上に細い余白」が再現できませんでした。
画面の左右&最上部・最下部に余白ができるようであれば、bodyに付いているブラウザ標準の余白だと思いますので、bodyに対してmargin: 0;かけてあげてください。
ご返信ありがとうございます!キャプチャ画像を追加しました。
headerと画像の間にある細い余白ができてしまします。ちなみにbodyの周りの余白の事ではないです。ご教授頂けたら幸いです。
指している箇所を勘違いしておりました、すみません!headerと画像の間、ですね。
考えられるとしたら
・画像自体の上部に白い部分がある(画像を要調整)
・何かしらのborderがついている?
等でしょうか。。。
いえいえ!!考えて下さって、ありがとうございます。
真っ黒な画像に差し替えてみましたが、上部の余白は表示されたままですね。
また、imgタグのborderを0にしてみましたが、結果は変わらずです。
一つ気付いたのですが、ページの拡大率を変えると余白が消えることがある様です。
なお、二枚目の写真は、見やすいようにheaderの高さを高くしています。
ズームレベルはどうなっていますか?
回答1件
あなたの回答
tips
プレビュー