如何操作 - 彈出式表單
瞭解如何使用 CSS 和 JavaScript 建立彈出式表單。
自己動手試一試 »
如何建立彈出式表單
步驟 1) 新增 HTML
使用 <form> 元素來處理輸入。您可以在我們的 PHP 教程中瞭解更多關於此資訊。
示例
<!-- 用於開啟彈出式表單的按鈕 -->
<button class="open-button" onclick="openForm()">開啟表單</button>
<!-- 表單 -->
<div class="form-popup" id="myForm">
<form action="/action_page.php" class="form-container">
<h1>登入</h1>
<label for="email"><b>郵箱</b></label>
<input type="text" placeholder="輸入郵箱" name="email" required>
<label for="psw"><b>密碼</b></label>
<input type="password" placeholder="輸入密碼" name="psw" required>
<button type="submit" class="btn">登入</button>
<button type="button" class="btn cancel" onclick="closeForm()">關閉</button>
</form>
</div>
步驟 2) 新增 CSS
示例
{box-sizing: border-box;}
/* 用於開啟聯絡表單的按鈕 - 固定在頁面底部 */
.open-button {
background-color: #555;
color: white;
padding: 16px 20px;
border: none;
cursor: pointer;
opacity: 0.8;
position: fixed;
bottom: 23px;
right: 28px;
width: 280px;
}
/* 彈出式表單 - 預設隱藏 */
.form-popup {
display: none;
position: fixed;
bottom: 0;
right: 15px;
border: 3px solid #f1f1f1;
z-index: 9;
}
/* 新增表單容器樣式 */
.form-container {
max-width: 300px;
padding: 10px;
background-color: white;
}
/* 全寬度輸入欄位 */
.form-container input[type=text], .form-container input[type=password] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
}
/* 當輸入框獲得焦點時,執行某些操作 */
.form-container input[type=text]:focus, .form-container input[type=password]:focus {
background-color: #ddd;
outline: none;
}
/* 為提交/登入按鈕設定樣式 */
.form-container .btn {
background-color: #04AA6D;
color: white;
padding: 16px 20px;
border: none;
cursor: pointer;
width: 100%;
margin-bottom:10px;
opacity: 0.8;
}
/* 為取消按鈕新增紅色背景色 */
.form-container .cancel {
background-color: red;
}
/* 為按鈕新增一些懸停效果 */
.form-container .btn:hover, .open-button:hover {
opacity: 1;
}
步驟 3) 新增 JavaScript
示例
function openForm() {
document.getElementById("myForm").style.display = "block";
}
function closeForm() {
document.getElementById("myForm").style.display = "none";
}
自己動手試一試 »
提示:前往我們的 HTML 表單教程 瞭解更多關於 HTML 表單的資訊。
提示:前往我們的 CSS 表單教程 瞭解更多關於如何設定表單元素樣式的資訊。