1. 上來一個ul先把登入和注冊兩個連結扔進去,ul的類nav,navbar-nav是導覽列,navbar-right讓他固定在右側。每個li的裡面,data-toggle="modal"是點選出現一個modal模組,data-target="#register"是點選之後出現的彈框的id,再裡面的span是那個小人圖示。
2. 接下來就是一個大div裝着這個注冊的彈框,id="register",用來上面的data-target找到目标,class="modal fade"是說這是個modal模态框,fade是漸入效果,如果不加就是點選注冊,直接出現,沒有從上面慢慢滑下的效果, tabindex="-1",讓esc鍵起作用,按esc後彈框消失,這個tabindex設定任何值或空的都起作用,不明白原理是啥。
3. 再裡面,先是一個class="modal-dialog",算是個對話框,沒有的話四周緊貼邊框不好看,裡面就是class="modal-content"内容了。
4. 内容分為三個部分,分别是class="modal-header",class="modal-body",class="modal-footer",有點像HTML的标簽。
5. header和footer都會帶一條橫線,不太好看,雖然footer會讓兩個按鈕右側對齊,不過還是不用比較好。
6. 其實還有一個class="modal-title",可以作為題目,字型大,用class="text-center"可以居中。
7. 右上角那個叉号,放在了一個class="modal-body"的按鈕裡面,這個body可以到處用,還不錯。class="close"是一個樣式,讓這個叉号按鈕好看一點,并且位于右上角。 data-dismiss="modal"是指點選後關閉這個模态框。<span>&times;</span>是叉号的轉義字元。
8. 然後中間的class="modal-body"就是一個普通的form表單,每個項目用class="form-group",input用class="form-control"改變一下樣式就好了。
9. 最後的兩個送出和取消的按鈕,外面加一個div,class="text-right"就可以右對齊了。
10. 下面加了個a連結,讓兩個彈框互相切換,data-toggle="modal"點選出現模态框, data-dismiss="modal"點選關閉目前模态框, data-target="#login"點選後出現的目标模态框id。
11. 後面那個登入彈框一毛一樣,不說了。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Document</title>
<link rel="stylesheet" href="css/bootstrap.css">
<script src="js/jquery.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<style>
body{
background-color: #C7EDCC;
font-family: "microsoft yahei";
/*min-width: 800px;*/
}
img{
width: 100%;
/*height: 462px;*/
.navbar{
/*margin-bottom: -10px;*/
#myppt{
margin-top: -20px;
</style>
</head>
<body>
<ul class="nav navbar-nav navbar-right">
<li><a data-toggle="modal" data-target="#register" href=""><span class="glyphicon glyphicon-user"></span> 注冊</a></li>
<li><a data-toggle="modal" data-target="#login" href=""><span class="glyphicon glyphicon-log-in"></span> 登入</a></li>
</ul>
<!-- 注冊視窗 -->
<div id="register" class="modal fade" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<button class="close" data-dismiss="modal">
<span>×</span>
</button>
</div>
<div class="modal-title">
<h1 class="text-center">注冊</h1>
<form class="form-group" action="">
<div class="form-group">
<label for="">使用者名</label>
<input class="form-control" type="text" placeholder="6-15位字母或數字">
<label for="">密碼</label>
<input class="form-control" type="password" placeholder="至少6位字母或數字">
<label for="">再次輸入密碼</label>
<label for="">郵箱</label>
<input class="form-control" type="email" placeholder="例如:[email protected]">
<div class="text-right">
<button class="btn btn-primary" type="submit">送出</button>
<button class="btn btn-danger" data-dismiss="modal">取消</button>
<a href="" data-toggle="modal" data-dismiss="modal" data-target="#login">已有賬号?點我登入</a>
</form>
<!-- 登入視窗 -->
<div id="login" class="modal fade">
<h1 class="text-center">登入</h1>
<input class="form-control" type="text" placeholder="">
<input class="form-control" type="password" placeholder="">
<button class="btn btn-primary" type="submit">登入</button>
<a href="" data-toggle="modal" data-dismiss="modal" data-target="#register">還沒有賬号?點我注冊</a>
</body>
</html>
但是有個問題就是你如果div放的位置不對或者彈框的層級不夠高有可能會被背景圖層遮蓋住,解決遮蓋的問題就是把登陸注冊彈框的的div放到最外面,或者把他的z-index屬性設定成9999最高層級。