這是一個輪撥圖的練習!目前布局快完成了 CSS有點小疑問
下面附上html以及CSS提供參考 主要看CSS就可以了 感謝各位
<div class="container">
<div class="slide">
<img
src="https://i.imgur.com/FRRoupS.png"
alt=""
referrerpolicy="no-referrer"
/>
<div class="content">
<div class="name"></div>
<div class="des"></div>
<button>看更多</button>
</div>
</div>
<div class="slide">
<img
class="ramen_img"
src="https://i.imgur.com/kZPA5jO.png"
alt=""
referrerpolicy="no-referrer"
/>
<div class="content">
<div class="name"></div>
<div class="des"></div>
<button>看更多</button>
</div>
</div>
<div class="slide">
<img
class="ramen_img"
src="https://i.imgur.com/KHOTcNO.png"
alt=""
referrerpolicy="no-referrer"
/>
<div class="content">
<div class="name"></div>
<div class="des"></div>
<button>看更多</button>
</div>
</div>
// 總共六個吧 我就不貼那麼多了
下面是我嘗試的CSS效果
.slide img {
width: 200px;
height: 300px;
display: inline-block;
position: absolute;
top: 50%;
transform: translateY(-50%);
border-radius: 20px;
box-shadow: 0 30px 45 px #505050;
}
.slide img:nth-child(1),
.slide img:nth-child(2) {
top: 0;
left: 0;
width: 100%;
height: 100%;
transform: translateY(0);
border-radius: 0;
box-shadow: none;
z-index: 5;
}
.slide img:nth-child(3) {
left: 50%;
z-index: 10;
}
會讓前面的圖變大 然後其他張排一排
我發現我使用nth-child的效果好像錯誤了
並沒有辦法把圖片分開(?
原本的教材是使用background-image 但是因為我要使用imgur空間
需要referrerpolicy="no-referrer"
才能讓圖片顯示出來 所以我改用img標籤
但接下來我這邊選取器似乎有錯誤!!?
想請教該怎麼修正CSS的部分才能排版呢?
新手無知,請教諸位前端前輩。
感謝!
這是因為,你搞錯了子層定義。
.slide img
是指在.slide 的 img
如
<div class="slide" id="slide1">
<img>
<img>
<img>
</div>
<div class="slide" id="slide2">
<img>
<img>
</div>
則在slide1的.slide img。有3個
但在slide2的.slide img。只有2個
而搭配 nth-child(1) 其實就是取得第1個。
但你的html則是
<div class="slide">
<img>
</div>
<div class="slide">
<img>
</div>
<div class="slide">
<img>
</div>
這樣你的 .slide 內,只會有一個 img 存在。
這時你的
.slide img:nth-child(2) {}
.slide img:nth-child(3) {}
其實是匹配不到的。
你要的是改變你想實際取到的位置。因該改成
.slide:nth-child(1) img {}
.slide:nth-child(2) img {}
.slide:nth-child(3) img {}
畢竟你實際要對的層級是.slide
你要的應該是這樣
.slide:nth-child(1) img,
.slide:nth-child(2) img {
...
}
.slide:nth-child(3) img {
...
}