0%

CSS 筆記 - 金魚系列 17 - 登入表單

login

學習重點

  • flex。
  • backdrop-filter: blur。
  • group 命名的使用。

HTML 架構

  • 主要架構有兩個 input,兩個按鈕。
  • 因為頁面有重複性的元素,可以使用群組的方式命名。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div class="login">
<form class="form">
<h2>金魚系列 XVII - 登入表單</h2>
<div class="loginGroup">
<label> 帳號
<input type="email" id="userID" placeholder="請輸入電子信箱">
</label>
</div>
<div class="loginGroup">
<label>密碼
<input type="password" placeholder="請輸入密碼">
</label>
</div>
<div class="btnGroup">
<button class="btn btnAccess">確認</button>
<button class="btn btnCancel">取消</button>
</div>
</div>
</form>
</div>

CSS 樣式

  • 為了使登入欄位在畫面中間,在 body 使用 flex 使其置中對齊畫面中間。
1
2
3
4
5
6
7
8
9
body {
box-sizing: border-box;
font-family: "Noto Sans TC", sans-serif;
background: url("https://images.unsplash.com/photo-1578683010236-d716f9a3f461?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1350&q=80")
no-repeat center center / cover;
display: flex;
justify-content: center;
align-items: center;
}

設定 login 區塊

  • 要給予背景寬度與高度才會跑出背景色。
  • CSS3 新的支援效果 backdrop-filter:blur。
1
2
3
4
5
6
7
8
9
10
11
12
13
.login {
width: 300px;
height: 300px;
padding: 20px;
background-color: rgba(#000, 0.6);
border-radius: 20px;
border: 5px solid #fff;
box-shadow: 0 0 30px #000;
backdrop-filter: blur(5px);
display: flex;
justify-content: center;
align-items: center;
}

欄位與按鈕

  • form 區塊寬度給予 100%,使之填滿區塊。
  • 按鈕部分針對共同樣式與個別樣式處理。
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
.form {
width: 100%;
.loginGroup {
margin-bottom: 10px;
}
label {
color: #fff;
line-height: 2.5;
font-weight: 300;
input {
outline: none;
padding: 10px 0;
padding-left: 12px;
width: 95%;
border: 2px solid #aaa;
border-radius: 6px;
&:focus {
border: 2px solid #72a8f0;
}
}
}
.btnGroup {
display: flex;
justify-content: space-between;
margin-top: 20px;
.btn {
padding: 10px 50px;
border-radius: 6px;
outline: none;
border: none;
font-weight: 300;
font-size: 16px;
color: #fff;
cursor: pointer;
}
.btnAccess {
background-color: #2bc42b;
&:hover {
background-color: darken(#2bc42b, 10%);
}
}
.btnCancel {
background-color: #f08282;
&:hover {
background-color: darken(#f08282, 10%);
}
}
}
}

CodePen https://codepen.io/hnzxewqw/full/BajgOwy

參考資料