BootstrapはTwitter社が開発したCSSの「フレームワーク」で、よく使われるスタイルがあらかじめ定義しているので、ルールに沿って利用するだけで整ったデザインのページを作成できます。
Bootstrapによる入力画面
Bootstrap3.3.7を使って次の入力画面を作ります。「Submit」ボタンを押すと入力値を取得して、「入力結果」に表示します。
- メニューはメインメニューとサイドメニューを作成し、各メニューにドロップダウンメニューを付けます。
- パンくずリストを付けます。
- 「名前」はtext、「エリア」はselect、「性別」はradio、「情報源」はcheckbox、「カラー選択」は、Colorpicker、「ボリューム」はrangeをそれぞれ使用します。
- 「カラー選択」は、入力欄で右クリックすると次の画面が表示され、表示されたカラーをクリックすると、そのカラーコードが設定されます。

ColorpickerはプラグインのBootstrap Colorpicker 2.3.6を使用します。 - 「Submit」ボタンを押すと、ダイアログが表示されます。google chromeのconsoleに「表示テスト」と表示されます。
- 「Submit」ボタンを押すと、名前とカラー選択の入力値を取得して、「入力結果」に表示します。
Bootstrapによる入力画面のコード
Bootstrap3.3.7を使った上記入力画面のコードを次に示します。
<!doctype html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>test</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<link href="dist/css/bootstrap-colorpicker.min.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<script src="//code.jquery.com/jquery-3.1.0.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="dist/js/bootstrap-colorpicker.js"></script>
<script type="text/javascript">
function check() {
console.log("表示テスト");
if (window.confirm('入力しますか?')) {
$('[name=result]').val('名前:' + $('input[name=name]').val() + "\n" +
'カラー選択:' + $('input[name=colorpicker]').val() + "\n"
);
}
}
</script>
</head>
<body>
<body>
<div class="container">
<!-- navbar -->
<div class="row">
<nav class="navbar navbar-default navbar-fixed-top">
<div class="navbar-header">
<a href="" class="navbar-brand">Home</a>
</div>
<ul class="nav navbar-nav">
<li class="active"><a href="">menu1</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">menu2 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a tabindex="-1" href="#">submenu1</a></li>
<li class="divider"></li>
<li><a tabindex="-1" href="#">submenu2</a></li>
</ul>
</li>
<li><a href="">menu3</a></li>
</ul>
</nav>
</div>
<!-- content -->
<div class="row" style="padding:80px 0 0 0">
<div class="col-md-3">
<div class="panel panel-default">
<div class="panel-heading">
Menu
</div>
<!-- <div class="panel-body"> -->
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href=""><i class="glyphicon glyphicon-pencil"></i> submenu1</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="glyphicon glyphicon-download"></i>submenu2 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a tabindex="-1" href="#">submenu1</a></li>
<li class="divider"></li>
<li><a tabindex="-1" href="#">submenu2</a></li>
</ul>
</li>
<li><a href=""><i class="glyphicon glyphicon-leaf"></i> submenu3</a></li>
<li><a href=""><i class="glyphicon glyphicon-folder-open"></i> submenu4</a></li>
</ul>
<!-- </div> -->
</div>
</div>
<!-- main -->
<div class="col-md-9">
<!-- apply custom style -->
<div class="page-header" style="margin-top:-30px;padding-bottom:0px;">
<h1><small>menu1->submenu1</small></h1>
</div>
<form method="post" action="" class="form-horizontal">
<!-- name -->
<div class="form-group">
<label class="col-md-2 control-label">名前</label>
<div class="col-sm-5">
<input type="text" name="name" class="form-control" placeholder="名前を入力して下さい">
<p class="help-block" >全角で名前を入れてね</p>
</div>
</div>
<!-- select -->
<div class="form-group">
<label class="col-md-2 control-label">エリア</label>
<div class="col-md-5">
<select name="area" class="form-control">
<option value="関東">関東</option>
<option value="関西">関西</option>
</select>
</div>
</div>
<!-- gender -->
<div class="form-group">
<label class="col-md-2 control-label">性別</label>
<div class="col-md-5">
<div class="radio-inline">
<label>
<input type="radio" name="gender" value="1" id="man">男
</label>
</div>
<div class="radio-inline">
<label>
<input type="radio" name="gender" value="2" id="woman">女
</label>
</div>
</div>
</div>
<!-- known by -->
<div class="form-group">
<label class="col-md-2 control-label">情報源</label>
<div class="col-md-5">
<div class="checkbox-inline">
<label>
<input type="checkbox" name="knownby" value="web" id="web">Web
</label>
</div>
<div class="checkbox-inline">
<label>
<input type="checkbox" name="knownby" value="magazine" id="magazine">雑誌
</label>
</div>
</div>
</div>
<!-- Colorpicker -->
<div class="form-group">
<label class="col-md-2 control-label">カラー選択</label>
<div class="col-sm-5">
<input id="cp1" type="text" name="colorpicker" class="form-control" value="#5367ce" />
<script> $(function() { $('#cp1').colorpicker(); }); </script>
<p class="help-block">色を選択してね。</p>
</div>
</div>
<!-- Slide bar -->
<div class="form-group">
<label class="col-md-2 control-label">ボリューム</label>
<div class="col-sm-5">
<input type="range" name="num" min="0" max="100" step="5" value="50"
onchange="changeValue(this.value)">
<span id="val">50</span>
<script type="text/javascript">
function changeValue(value) {
document.getElementById("val").innerHTML = value;
}
</script>
</div>
</div>
<!-- submit -->
<div class="form-group">
<div class="col-md-offset-3">
<input type="button" value="Submit" class="btn btn-primary" onClick="check()">
</div>
</div>
<!-- input result -->
<div class="form-group">
<label class="col-md-2 control-label">入力結果</label>
<div class="col-md-5">
<textarea class="form-control" name="result" rows=3 ></textarea>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- footer -->
<div id="footer">copy left everything free.</div>
</html>
フォルダ構成は次のようになります。
- フッタのCSSは、ファイル「css/style.css」に設定します。
- Colorpickerのプラグインはフォルダ「dist/」に設定します。



