如何使用 HTML 構建自定義表單控制元件?
表單元件是 Web 應用程式的重要組成部分之一。表單用於聯絡我們頁面、申請頁面等。HTML 為我們提供了許多不同的方法和選項來定製設定。這包括文字區域、輸入、複選框等。本文將解釋如何使用 HTML 構建自定義表單控制元件。
使用 HTML 和 CSS 建立自定義表單控制元件
我們只能使用 HTML 和 CSS 來建立自定義表單控制元件。但是,要與後端應用程式互動,還需要 JavaScript。但即使如此,我們仍然可以使用 HTML 和 CSS 建立所有前端效果。我們可以使用 input after 屬性來為設計新增互動性。
示例
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
<style>
.custom-checkbox {
position: relative;
display: inline-block;
cursor: pointer;
padding-left: 30px;
line-height: 20px;
}
.checkmark {
position: absolute;
top: 0;
left: 0;
height: 20px;
width: 20px;
background-color: #eee;
}
.custom-checkbox input[type="checkbox"] {
opacity: 0;
cursor: pointer;
height: 0;
width: 0;
}
.checkmark:after {
content: "";
position: absolute;
display: none;
left: 6px;
top: 2px;
width: 5px;
height: 10px;
border: solid #000;
border-width: 0 3px 3px 0;
transform: rotate(45deg);
}
.custom-checkbox input[type="checkbox"]:checked + .checkmark:after {
display: block;
}
</style>
</head>
<body>
<label class="custom-checkbox">
<input type="checkbox" />
<span class="checkmark"></span>
Custom Checkbox
</label>
</body>
</html>
解釋
程式碼使用 CSS 樣式建立了一個自定義複選框。該複選框使用 HTML 標籤,其中嵌套了一個 input 元素。標籤有一個名為“custom-checkbox”的自定義類。複選框預設情況下隱藏,使用 CSS 屬性“opacity: 0”。
複選框使用帶有類“checkmark”的 span 元素賦予自定義外觀,該元素絕對定位在複選框之上。span 元素的預設背景顏色為 #eee。使用 CSS 屬性“:after”將勾選標記圖示新增到 span 元素中。勾選標記圖示預設情況下隱藏,使用“display: none”。當複選框被選中時,使用 CSS 選擇器“+ .checkmark:after”顯示勾選標記圖示。
如何使用 HTML、CSS 和 JavaScript 建立自定義表單控制元件
當我們想要為 Web 應用程式新增互動性時,使用 JavaScipt 非常重要。我們可以使用 JavaScript 的 onChange 函式在選中和未選中選項、文字區域、輸入欄位等之間切換。
示例
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
<style>
label {
position: relative;
display: inline-block;
cursor: pointer;
padding-left: 30px;
line-height: 20px;
}
input[type="checkbox"] {
opacity: 0;
cursor: pointer;
height: 0;
width: 0;
}
span {
position: absolute;
top: 0;
left: 0;
height: 20px;
width: 20px;
background-color: #eee;
}
label.checked span:after {
content: "";
position: absolute;
left: 6px;
top: 2px;
width: 5px;
height: 10px;
border: solid #000;
border-width: 0 3px 3px 0;
transform: rotate(45deg);
}
</style>
</head>
<body>
<label>
<input type="checkbox" onchange="this.parentElement.classList.toggle('checked')" />
<span></span>
Custom Checkbox
</label>
</body>
</html>
解釋
該程式碼是用 HTML、CSS 和 JavaScript 建立的自定義複選框控制元件。HTML 標記定義了一個 label 元素,其中包含一個 type 為 checkbox 的 input 元素和一個用於複選框視覺化表示的 span 元素。CSS 樣式定位元素並定義複選框的外觀。
JavaScript 程式碼偵聽 input 元素上的 change 事件,並在父 label 元素上切換“checked”類以更新複選框的外觀。總的來說,該程式碼提供了一個可訪問且可自定義的複選框控制元件,可以輕鬆修改以適應任何專案的需要。
結論
總之,在 HTML 中構建自定義表單控制元件可以成為 Web 開發人員建立使用者友好且引人入勝的表單的強大工具。透過使用 CSS 和 JavaScript,開發人員可以建立自定義複選框、單選按鈕和其他表單元素,這些元素可以輕鬆地進行樣式設定以匹配其網頁的設計。建立自定義表單控制元件可以改善使用者體驗,並提供對錶單的行為、驗證和可訪問性的更多控制。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP