第二百三十四节,Bootstrap表单和图片

时间:2023-03-08 17:20:50
第二百三十四节,Bootstrap表单和图片

Bootstrap表单和图片

学习要点:

  1.表单

  2.图片

本节课我们主要学习一下 Bootstrap 表单和图片功能,通过内置的 CSS 定义,显示各 种丰富的效果。

一.表单

Bootstrap 提供了一些丰富的表单样式供开发者使用。

1.基本格式

实现基本的表单样式

form-control样式class类,写在<input>里,设置输入框样式(Bootstrap)
form-group样式class类,写在输入框外面的<div>里,设置输入框与输入框之间的样式(Bootstrap)

<form>
<div class="form-group">
<label>电子邮件</label>
<input type="email" class="form-control" placeholder="请输入您的电子邮件">
</div>
<div class="form-group">
<label>密码</label>
<input type="password" class="form-control" placeholder="请输入您的密码">
</div>
</form>

第二百三十四节,Bootstrap表单和图片

注:只有正确设置了输入框的 type 类型,才能被赋予正确的样式。支持的输入框控件 包括:text、password、datetime、datetime-local、date、month、time、week、 number、email、url、search、tel 和 color。

2.内联表单

让表单左对齐浮动,并表现为 inline-block 内联块结构,当小于 768px,会恢复独占样式

form-inline样式class类,写在<form>里,让表单左对齐浮动,并表现为 inline-block 内联块结构,当小于 768px,会恢复独占样式(Bootstrap)

<form class="form-inline">
<div class="form-group">
<label>电子邮件</label>
<input type="email" class="form-control" placeholder="请输入您的电子邮件">
</div>
<div class="form-group">
<label>密码</label>
<input type="password" class="form-control" placeholder="请输入您的密码">
</div>
</form>

大于768px

第二百三十四节,Bootstrap表单和图片

小于768px

第二百三十四节,Bootstrap表单和图片

3.表单合组

前后增加片段,给输入框前后加上片段

input-group-addon样式class类,写在input同级的<div>里,给输入框加一个片段(Bootstrap)
input-group样式class类,写在input父级的<div>里,将输入框和片段合并(Bootstrap)

<form class="form-inline">
<div class="form-group">
<label>电子邮件</label>
<input type="email" class="form-control" placeholder="请输入您的电子邮件">
</div>
<div class="form-group">
<label>密码</label>
<input type="password" class="form-control" placeholder="请输入您的密码">
</div> <label>金额</label>
<div class="input-group">
<div class="input-group-addon">¥</div>
<input type="text" class="form-control">
<div class="input-group-addon">.00</div>
</div>
</form>

第二百三十四节,Bootstrap表单和图片

4.水平排列

让表单内的元素保持水平排列

form-horizontal样式class类,写在<form>里,让表单内的元素保持水平排列(Bootstrap)
col-sm-2样式class类,写在<label>里,给输入框的标题设置所占比例(Bootstrap)
col-sm-10样式class类,写在input的父级<div>里,给输入框设置所占比例(Bootstrap)
control-label样式class类,写在<label>里,让输入框标题和form元素同步(Bootstrap)

<form class="form-horizontal">
<div class="form-group">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="email" class="form-control" placeholder="请输入您的电子邮件">
</div>
</div> <div class="form-group">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>
</form>

大屏

第二百三十四节,Bootstrap表单和图片

小屏

第二百三十四节,Bootstrap表单和图片

注:这里用到了 col-sm 栅格系统,后面章节会重点讲解,而 control-label 表示和 父元素样式同步。

5.复选框和单选框

设置复选框,为区块一行

checkbox样式class类,写在input外层<div>里,设置复选框为区块一行样式(Bootstrap)

    <div class="checkbox">
<label>
<input type="checkbox">体育
</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox">音乐
</label>
</div>

第二百三十四节,Bootstrap表单和图片

设置禁用的复选框

disabled样式class类,写在input外层<div>里,禁止复选框文字选择(Bootstrap)

    <div class="checkbox disabled">
<label>
<input type="checkbox" disabled>体育
</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox">音乐
</label>
</div>

第二百三十四节,Bootstrap表单和图片

设置内联一行显示的复选框

checkbox-inline样式class类,写在input外层<label>里,设置内联一行显示的复选框(Bootstrap)

    <label class="checkbox-inline disabled">
<input type="checkbox" disabled>体育
</label> <label class="checkbox-inline">
<input type="checkbox">音乐
</label>

第二百三十四节,Bootstrap表单和图片

设置单选框区块一行显示

radio样式class类,写在input外层<div>里,设置单选框区块一行显示(Bootstrap)

    <div class="radio">
<label>
<input type="radio" name="sex">男
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="sex">女
</label>
</div>

第二百三十四节,Bootstrap表单和图片

设置单选框内联一行显示

radio-inline样式class类,写在input外层<div>里,设置单选框内联一行显示(Bootstrap)

    <div class="radio-inline">
<label>
<input type="radio" name="sex">男
</label>
</div>
<div class="radio-inline">
<label>
<input type="radio" name="sex">女
</label>
</div>

第二百三十四节,Bootstrap表单和图片

注意:禁用单选框和禁用复选框一样

6.下拉列表

设置下拉列表

form-control样式class类,写在<select>里,设置下拉列表(Bootstrap)

    <select class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>

第二百三十四节,Bootstrap表单和图片

7.校验状态

设置校验状态,也就是设置输入框的校验状态样式,

has-error样式class类,写在input最外层<div>里,设置校验状态,也就是设置输入框的校验状态样式,错误状态(Bootstrap)
has-success样式class类,写在input最外层<div>里,设置校验状态,也就是设置输入框的校验状态样式,成功状态(Bootstrap)
has-warning样式class类,写在input最外层<div>里,设置校验状态,也就是设置输入框的校验状态样式,警告状态(Bootstrap)

    <div class="form-group has-error">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>
<div class="form-group has-success">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>
<div class="form-group has-warning">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>

第二百三十四节,Bootstrap表单和图片

label 标签同步相应状态,如果标题名字没有同步校验状态可以在label标签加class="control-label"同步

control-label样式class类,写在要同步样式的标签里,将当前元素与最外层div样式同步,也就共用样式(Bootstrap)

    <div class="form-group has-error">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>
<div class="form-group has-success">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>
<div class="form-group has-warning">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
</div>
</div>

第二百三十四节,Bootstrap表单和图片

8.给输入框添加额外的文字图标

文本框右侧内置文本图标

glyphicon样式class类,写在input同级的<span>里,设置文本图标基础样式(Bootstrap)
glyphicon-ok样式class类,写在input同级的<span>里,设置文本图标(Bootstrap)
form-control-feedback样式class类,写在input同级的<span>里,设置文本图标的位置(Bootstrap)
has-feedback样式class类,写在input最外层的<div>里,将文本图标位置应用到输入框(Bootstrap)

    <div class="form-group has-warning has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
<span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
</div>

第二百三十四节,Bootstrap表单和图片

图标样式

glyphicon-ok样式class类,写在input同级的<span>里,成功状态图标(Bootstrap)
glyphicon-warning-sign样式class类,写在input同级的<span>里,警告状态图标(Bootstrap)
glyphicon-remove样式class类,写在input同级的<span>里,错误状态图标(Bootstrap)

    <div class="form-group has-success has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
<span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
</div>
<div class="form-group has-warning has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
<span class="glyphicon glyphicon-warning-sign form-control-feedback"></span>
</div>
</div>
<div class="form-group has-error has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
<span class="glyphicon glyphicon-remove form-control-feedback"></span>
</div>
</div>

第二百三十四节,Bootstrap表单和图片

9.输入框控制尺寸

从大到小

input-lg样式class类,写在<input>里,大尺寸输入框(Bootstrap)
input-sm样式class类,写在<input>里,小尺寸输入框(Bootstrap)

    <div class="form-group has-success has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control input-lg" placeholder="请输入名称">
<span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
</div>
<div class="form-group has-warning has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control" placeholder="请输入名称">
<span class="glyphicon glyphicon-warning-sign form-control-feedback"></span>
</div>
</div>
<div class="form-group has-error has-feedback">
<label class="col-sm-2 control-label">电子邮件</label>
<div class="col-sm-10">
<input type="text" class="form-control input-sm" placeholder="请输入名称">
<span class="glyphicon glyphicon-remove form-control-feedback"></span>
</div>
</div>

第二百三十四节,Bootstrap表单和图片

注:也可以设置父元素 form-group-lg、form-group-sm,来调整。

二.图片

Bootstrap 提供了一些丰富的图片样式供开发者使用。

1.图片形状

img-rounded样式class类,写在<img>里,设置图片圆角样式(Bootstrap)
img-circle样式class类,写在<img>里,设置图片圆形,图片时正方形的就是圆形,图片时长方形的就是椭圆(Bootstrap)
img-thumbnail样式class类,写在<img>里,设置图片缩略图样式(Bootstrap)

<img src="img/pic.png" alt="图片" class="img-rounded">
<img src="img/pic.png" alt="图片" class="img-circle">
<img src="img/pic.png" alt="图片" class="img-thumbnail">

第二百三十四节,Bootstrap表单和图片

 2响应式图片

img-responsive样式class类,写在<img>里,设置图片响应式(Bootstrap)

<img src="img/pic.png" alt="图片" class="img-thumbnail img-responsive">
<img src="img/pic.png" alt="图片" class="img-thumbnail img-responsive">
<img src="img/pic.png" alt="图片" class="img-thumbnail img-responsive">

第二百三十四节,Bootstrap表单和图片