學過的內容沒有實際在VS CODE上寫過,很難不去忘記。
透過切版練習,逼自己每天都進步一點點,相信有一天,自己也可以寫出結構清楚又不跑版的網頁。
先作一個wrap區塊
在做一個container區塊來固定內容寬度
container內放三個item區塊
item區塊分別有放圖片的pic區塊和放文字的txt區塊
<div class="wrap">
<div class="container">
<div class="item">
<div class="pic">
<img src="https://picsum.photos/400/400?random=11">
</div>
<div class="txt">
<h2>金魚都能懂的網頁入門</h2>
<p>年度最佳網頁入門教學影片,輕鬆學會網頁製作,原始碼原來如此有趣啊。</p>
<a href="" class="btn">more</a>
</div>
</div>
<div class="item">
<div class="pic">
<img src="https://picsum.photos/400/400?random=12">
</div>
<div class="txt">
<h2>金魚都能懂的網頁切版</h2>
<p>沒想到切版竟然如此簡單,以往的困難迎刃而解,技巧原來這般單純。</p>
<a href="" class="btn">more</a>
</div>
</div>
<div class="item">
<div class="pic">
<img src="https://picsum.photos/400/400?random=13">
</div>
<div class="txt">
<h2>金魚都能懂的CSS選取器</h2>
<p>CSS選取器原來是這道理啊,其實之前都誤解她了,對不起 9523 !</p>
<a href="" class="btn">more</a>
</div>
</div>
</div>
</div>
*{
margin: 0;
padding: 0;
list-style: none;
}
.wrap{
height:100vh;
display:flex;
align-items:center;
}
.container{
width:1200px;
margin: auto;
display: flex;
}
.item{
width: 370px;
margin: 0 15px;
}
2.將item區塊內的pic和txt區塊設為橫向並排
且寬度各佔item區塊的一半
.item{
width: 370px;
margin: 0 15px;
display:flex;
}
.item .pic{
width:50%;
}
.item .txt{
width:50%;
}
因為圖片的尺寸超出了item區塊的尺寸 將圖片尺寸設為填滿pic區塊
.item .pic img{
width:100%;
height:100%;
}
box-sizing:border-box;
來調整.item .txt{
width:50%;
padding: 20px;
box-sizing: border-box;
}
object-fit: cover;
來調整.item .pic img{
width:100%;
height:100%;
object-fit: cover;
}
相關資料:新手前端也不該犯的錯:圖片變形
.item .txt{
width:50%;
padding: 20px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: center;
}
.item .txt .btn{
line-height: 1.5em;
border: 1px solid #ccc;
padding: 0 1em;
}
因為設定成從上到下排列(主軸/資料流向),預設狀態下(交錯軸/與資料流垂直)會整個填滿(align-items:stretch;),因此設定的border就變成了滿版了
align-self: flex-end;
調整btn的樣式.item .txt .btn{
line-height: 1.5em;
border: 1px solid #ccc;
padding: 0 1em;
align-self: flex-end;
}
相關資料:align-self 屬性介紹
在調整邊框及去掉a連結預設的底線樣式和文字內容的距離
.item .txt .btn{
line-height: 1.5em;
border: 1px solid #ccc;
padding: 0 1em;
align-self: flex-end;
text-decoration: none;
border-radius: 200px;
margin-top: 1em;
}
.item .txt h2{
margin-bottom: .4em;
}
.wrap{
height:100vh;
display:flex;
align-items:center;
background: linear-gradient(-30deg, #fdaecb, #e7597f , #fe8556);
}
.item{
width: 370px;
margin: 0 15px;
display:flex;
background-color: #fff;
}
.item .txt .btn{
line-height: 1.5em;
border: 1px solid #ccc;
padding: 0 1em;
align-self: flex-end;
text-decoration: none;
border-radius: 200px;
margin-top: 1em;
color:#aaa;
}
.item .txt .btn:hover{
background-color: #ccc;
color:#fff;
}
box-shadow: x軸 y軸 模糊程度 色彩;
rgba(red 值, green 值, blue 值, alpha 值);
.item{
width: 368px;
margin: 0 15px;
display:flex;
background-color: #fff;
border:1px solid #888;
box-shadow: 0 10px 30px rgba(160,0,0,.5);
font-family: 'Noto Sans TC',serif;
}
}
參考資料:金魚都能懂的這個網頁畫面怎麼切 : 超通用橫式版面
以上為個人學習筆記整理
若有錯誤,歡迎指正