©
이 문서에서는PHP 중국어 웹사이트 매뉴얼풀어 주다
表单控件样式、布局选项和自定义组件的示例和使用指南,用于创建多种窗体。
引导程序的窗体控件扩展到我们重新启动的表单样式上课。使用这些类选择它们的自定义显示,以便在浏览器和设备之间进行更一致的呈现。
确保使用适当的type
属性对所有输入%28e。g.email
有关电子邮件地址或number
关于数字信息%29,以利用较新的输入控件,如电子邮件验证,号码选择,等等。
下面是一个演示Bootstrap表单样式的快速示例。继续阅读有关所需类、表单布局等方面的文档。
文本窗体控件S,
S,和
s-是用
.form-control
上课。包括一般外观、焦点状态、大小大小等样式。
一定要探索我们的定制表格以进一步的风格S.
对于文件输入,交换.form-control
为.form-control-file
...
使用类似的类设置高度.form-control-lg
和.form-control-sm
...
添加readonly
属性,以防止修改输入的值。只读输入看起来更轻%28,就像禁用的输入%29一样,但保留标准光标。
如果你想元素样式为纯文本的窗体中的元素,请使用
.form-control-plaintext
类以移除默认窗体字段的样式,并保留正确的页边距和填充。
默认复选框和收音机是在以下帮助下进行改进的:.form-check
,,,为这两种输入类型提供一个单独的类,以改进它们的HTML元素的布局和行为复选框用于选择列表中的一个或多个选项,而收音机则用于从多个选项中选择一个选项。
支持禁用复选框和收音机,但要提供not-allowed
光标在父节点的悬停上。,则需要添加
.disabled
类传递给父类。.form-check
禁用类还将减轻文本颜色,以帮助指示输入的状态。
默认情况下,任何数量的复选框和收音机都将垂直堆叠,并适当地用.form-check
...
将同一水平行上的复选框或收音机分组,方法是添加.form-check-inline
给任何人.form-check
...
加.position-static
对内部的输入.form-check
没有任何标签文字。记住仍然要为辅助技术提供某种形式的标签,例如,使用aria-label
29%。
因为Bootstrap适用display: block
和width: 100%
对于几乎所有的窗体控件,窗体默认将垂直堆栈。其他类可用于根据每个表单更改此布局。
大.form-group
类是向窗体添加某些结构的最简单方法。它的唯一目的是提供margin-bottom
围绕标签和控制配对。作为奖励,因为它是一个类,您可以使用它S,
可以使用我们的网格类构建更复杂的表单。将这些用于需要多列、不同宽度和其他对齐选项的表单布局。
你也可以交换.row
为.form-row
,这是我们标准网格行的一个变体,它覆盖了默认的列排水沟,以使布局更加紧凑。
还可以用网格系统创建更复杂的布局。
通过添加.row
类来形成组,并使用.col-*-*
类指定标签和控件的宽度。
一定要加上.col-form-label
敬你的S也是如此,因此它们垂直地以其关联的窗体控件为中心。为
元素,您可以使用
.col-form-legend
使它们看起来像普通的元素。
确保使用.col-form-label-sm
或.col-form-label-lg
敬你的s正确地跟随
.form-control-lg
和.form-control-sm
...
如前面的示例所示,我们的网格系统允许您放置任意数量的.col
在.row
或.form-row
.他们会平分可用的宽度。您还可以选择列的一个子集来占用更多或更少的空间,而其余的部分则会占用.col
s与其他列类平分,具体列类如下.col-7
...
下面的示例使用一个Flexbox实用程序垂直地将内容和更改中心化。.col
到.col-auto
这样,您的列只需要占用足够的空间。换句话说,列本身根据内容大小。
然后,您可以再次将其与特定大小的列类混合。
当然还有自定义窗体控件是支持的。
使用.form-inline
类以在单个水平行上显示一系列标签、窗体控件和按钮。内联窗体中的窗体控件与其默认状态略有不同。
控件是display: flex
,折叠任何HTML空白,并允许您提供对齐控制间距和挠曲箱公用设施。
控件和输入组接收width: auto
若要重写引导默认设置,请执行以下操作width: 100%
...
控制仅在宽度至少为576 px的视图中显示内联。说明移动设备上的窄视口。
您可能需要手动处理各个窗体控件的宽度和对齐方式。间距效用%28,如%29所示。最后,确保始终包括使用每个窗体控件,即使您需要对非屏幕阅读器访问者隐藏它
.sr-only
...
还支持自定义窗体控件和选择。
如果没有为每个输入都包含一个标签,屏幕阅读器等辅助技术就会给表单带来麻烦。对于这些内联窗体,可以使用.sr-only
上课。还有其他为辅助技术提供标签的方法,例如aria-label
,,,aria-labelledby
或title
属性。如果这些技术都没有出现,辅助技术可能会使用placeholder
属性(如果存在),但请注意placeholder
作为其他标签方法的替代品,不建议使用其他标签方法。
可以使用以下方法创建窗体中的块级帮助文本:.form-text
%28以前称为.help-block
在v3%29。内联帮助文本可以使用任何内联HTML元素和实用程序类灵活实现,如.text-muted
...
帮助文本应该显式地与它所关联的窗体控件关联,使用aria-describedby
属性。这将确保辅助技术--如屏幕阅读器--在用户聚焦或进入控件时宣布此帮助文本。
输入下面的帮助文本可以用.form-text
本课程包括display: block
并在上面的输入中添加一些顶部空间,以便于间距。
Your password must be 8-20 characters long, contain letters and numbers, and must not contain spaces, special characters, or emoji.
内联文本可以使用任何典型的内联HTML元素%28,,,
,或者其他%29的东西,只有一个实用程序类。
添加disabled
在输入上设置布尔属性,以防止用户交互,并使其看起来更轻。
添加disabled
属性为若要禁用所有控件,请执行以下操作。
虽然Bootstrap将在所有浏览器中应用这些样式,但InternetExplorer 11及以下版本并不完全支持disabled
属性的使用自定义JavaScript禁用这些浏览器中的字段集。
通过HTML 5表单验证向用户提供有价值的、可操作的反馈-在我们支持的所有浏览器中都可以使用。从浏览器默认验证反馈中选择,或者使用内置类和初学者JavaScript实现自定义消息。
我们极力推荐本机浏览器默认的自定义验证样式不会通知屏幕阅读器。
下面是表单验证如何与Bootstrap一起工作:
HTML表单验证通过css的两个伪类应用,:invalid
和:valid
它适用于,,,
,和
元素。
引导范围:invalid
和:valid
风格到父母.was-validated
类,通常应用于否则,任何没有值的必需字段在页面加载时都会显示为无效。通过这种方式,您可以选择何时激活它们(通常是在表单提交尝试%29之后)。
作为退路,.is-invalid
和.is-valid
类可以代替伪类。服务器端验证.他们不需要.was-validated
家长班。
由于css工作方式上的限制,目前%29不能将样式应用到在DOM中的表单控件之前,无需自定义JavaScript的帮助。
所有现代浏览器都支持约束验证API,用于验证表单控件的一系列JavaScript方法。
反馈消息可以利用浏览器默认值%28不同的每个浏览器,和无法通过CSS%29或我们的自定义反馈样式与额外的HTML和CSS。
您可以提供自定义有效性消息。setCustomValidity
用JavaScript写的。
考虑到这一点,请考虑以下演示,用于我们的自定义表单验证样式、可选服务器端类和浏览器默认值。
对于自定义引导窗体验证消息,您需要添加novalidate
的布尔属性这将禁用浏览器默认反馈工具提示,但仍然提供对JavaScript表单验证API的访问。尝试提交下面的表单;我们的JavaScript将拦截Submit按钮并将反馈转发给您。
尝试提交时,您将看到:invalid
和:valid
应用于窗体控件的样式。
对自定义验证、反馈消息或编写JavaScript来更改表单行为不感兴趣?很好,您可以使用浏览器默认设置。试着提交下面的表格。根据浏览器和操作系统的不同,您将看到一种略有不同的反馈样式。
虽然这些反馈样式不能使用CSS样式,但仍然可以通过JavaScript定制反馈文本。
我们建议使用客户端验证,但如果需要服务器端,则可以使用.is-invalid
和.is-valid
注意.invalid-feedback
也支持这些类。
我们的示例表单显示了本机文本。S以上,但表单验证样式也适用于我们的自定义窗体控件。
为了实现更多的自定义和跨浏览器一致性,请使用我们完全自定义的表单元素来替换浏览器默认设置。它们构建在语义和可访问标记之上,因此它们是任何默认表单控件的可靠替代品。
每个复选框和收音机都封装在原因有三:
它为检查控件提供了更大的命中区域。
它提供了一个有用的语义包装器来帮助我们替换默认的S.
它触发自动,意味着不需要JavaScript。
我们隐藏缺省值带着
opacity
并使用.custom-control-indicator
若要在其位置生成新的自定义窗体指示器,请执行以下操作。不幸的是,我们不能仅仅从因为CSS的
content
不适用于那个元素。
我们使用兄弟姐妹选择器%28~
%29类州
:checked
-正确的样式,我们的定制表格指示器。当与.custom-control-description
类,我们还可以根据状态。
在检查状态中,我们使用Base 64嵌入式SVG图标从开放标志这为我们在浏览器和设备之间设置样式和定位提供了最好的控制。
自定义复选框也可以利用:indeterminate
类,当通过JavaScript%28手动设置时,没有可用的HTML属性来指定它%29。
如果您正在使用jQuery,这样的内容就足够了:
$('.your-checkbox').prop('indeterminate', true)
也可以禁用自定义复选框和收音机。添加disabled
属性的布尔属性。并且,自定义指示器和标签描述将自动样式化。
自定义复选框和收音机是内联启动。添加具有类的父级.custom-controls-stacked
以确保每个窗体控件位于单独的行上。
习俗菜单只需要一个自定义类,
.custom-select
以触发自定义样式。
文件输入是其中最粗糙的,如果您想将它们与函数连接起来,则需要额外的JavaScript。选择文件…和选定的文件名文本。
下面是它的工作原理:
我们把在...
因此,自定义控件正确地触发文件浏览器。
我们隐藏默认文件通孔
opacity
...
我们用::after
生成自定义背景和指令%28选择文件…29%。
我们用::before
若要生成并定位浏览纽扣。
我们宣布height
在为周围内容的适当间隔。
换句话说,它是一个完全自定义的元素,都是通过CSS生成的。
大:lang()
伪类用于方便地将“浏览”和“选择文件…”文本翻译成其他语言。简单地重写或添加条目到$custom-file-text
相关的SCSS变量语言标记和本地化字符串。英文字符串也可以用同样的方式定制。例如,下面是如何添加西班牙语翻译%28西班牙语代码的方法es
29%:
$custom-file-text: ( placeholder: ( en: "Choose file...", es: "Seleccionar archivo..." ), button-label: ( en: "Browse", es: "Navegar" ));
您需要正确设置文档%28或其子树%29的语言,以便显示正确的文本。这可以使用大lang
属性或者Content-Language
http报头,以及其他方法。
© 2011–2017 Twitter, Inc