自學日記

學習程式相關知識及學習法

0%

切版-製作一個互動圖文卡片

切版-製作一個互動圖文卡片

根據金魚切版練習切版

程式撰寫

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link href="https://fonts.googleapis.com/css?family=Noto+Sans+TC:100,500&display=swap" rel="stylesheet">


<style type="text/css">
*{
margin: 0;
padding: 0;
list-style: none;
font-family: 'Noto Sans TC', sans-serif;
}
.wrap{
width: 100%;
display: flex;
}
.item{
width: 25%;
position: relative;
}
.item img{
width: 100%;
/*vertical-align使用是因為div插入圖片會產生些空隙,
* 所以以此去做些微調整,除了baseline其他皆可使用,詳細說明見備註*/
vertical-align: middle;
}
.item .txt{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
padding: 20px;
background-color: rgba(0,0,0,.6);
display: flex;
justify-content: center;
flex-direction: column;
opacity: 0;
transition: opacity .5s;
}
.item:hover .txt{
opacity: 1;
}
.item h2{
font-size: 28px;
color: #ff0;
font-weight: 500;
}
.item h2:after{
content: '';
display: block;
width: 0%;
height: 2px;
margin: 10px 0;
background-color: #ff0;
transition: width .5s .3s;
}
.item:hover h2:after{
width: 100%;
}
.item p{
font-size: 18px;
color: #fff;
font-weight: 100;
}
</style>
</head>
<body>


<div class="wrap">
<div class="item">
<img src="https://picsum.photos/500/400?random=10">
<div class="txt">
<h2>金魚都能懂的這個網頁畫面怎麼切 : 互動圖文卡片</h2>
<p>互動圖文卡片是我們在網頁中經常見到的另一種稀飯版,不會切你就遜掉囉。</p>
</div>
</div>
<div class="item">
<img src="https://picsum.photos/500/400?random=5">
<div class="txt">
<h2>稀飯版都不會切你怎麼轉職?來我的網頁暴力班,保證讓你邊痛邊學會</h2>
<p>把技能學好是需要一點點痛一點點爽一點點過癮跟一點點的暴力,不信你來報名試試看啊!</p>
</div>
</div>
<div class="item">
<img src="https://picsum.photos/500/400?random=20">
<div class="txt">
<h2>不知道你有沒有聽過網頁的都市傳說,絕對不要相信沒有驗證過的謠言</h2>
<p>網頁的都市傳說很多種,其中一種叫做兒子絕對定位老爸就要相對定位,這啥鬼?</p>
</div>
</div>
<div class="item">
<img src="https://picsum.photos/500/400?random=30">
<div class="txt">
<h2>買線上課程前停個幾秒想想,還是先把免費的金魚教學練一練吧</h2>
<p>買了不會看,那不如來看免錢的,縱使不看也不會有罪惡感,更不會心痛啊。</p>
</div>
</div>
</div>


</body>
</html>

備註

延伸問題

假如希望網頁中圖片置中,需要再製作一個父層div,範例中我取名”container”

1
2
3
4
5
6
.container{

height: 100vh;
display: flex;
align-items: center;
}

vertical-align: img與div之間的空隙問題

參考文章:
1.CSS段落對齊方式,系統認識block元素與inline元素
2.CSS內聯元素垂直對齊的解決方案,vertical-align屬性詳解
3.圖片在容器中產生的底部間隔,CSS可以巧妙解決,前端原理很重要