Button 按钮
选项
只需修改 bsStyle
属性,就能使用任一可用的样式选项快速升成一个指定样式的按钮。
按钮间隙
由于 React 并不输出元素间的换行符,在同一行的按钮会显示成紧挨着的形式。为了让同一步的多个按钮间保持一定间隙,可将这些按钮放在 <ButtonToolbar />
中。
尺寸
需要更大或者更小的按钮?添加 bsSize="large"
, bsSize="small"
, 或 bsSize="xsmall"
属性来调整按钮的尺寸。
增加 block
属性,可生成块级别的按钮 - 这些按钮与块的宽度相同。
激活状态
设置按钮为激活状态只要增加 active
属性。
禁用状态
让按钮看起来不可点击是通过褪色 50% 来实现的。增加 disabled
可以达到此目的。
按钮标签
DOM 元素标签将会基于你提供的属性自动选择。 属性中如果有href
属性,则按钮使用 <a />
元素,否则使用 <button />
元素。
跨浏览器兼容
由于 <Button />
在某些情况下会渲染为 <a>
标签。 而链接标签不能被 disabled
, 看起来可以被操作。 需要增加 pointer-events: none;
让链接阻止被聚焦,这个标签只在最新的浏览器上被支持。
按钮加载状态
在将要激活一个异步操作时,最佳的用户体验是给用户一个正在加载的提示,这个可通过更改 <Button />
的相关属性使得按钮看起来像这样:
属性 - Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | false | |
block | boolean | false | |
bsClass | string | 'btn' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "lg" , "large" , "sm" , "small" , "xs" , "xsmall" | 定义组件尺寸的属性。 | |
bsStyle | one of: "success" , "warning" , "danger" , "info" , "default" , "primary" , "link" | 'default' | 定义组件可视的或上下文相关的样式属性。 |
componentClass | elementType | 使用一个此组件提供的定制化样式。 | |
disabled | boolean | false | |
href | string | ||
onClick | function | ||
type | one of: 'button' , 'reset' , 'submit' | 'button' | 定义 HTML 按钮的类型属性 |
ButtonGroup, ButtonToolbar 按钮群组
将一系列按钮通过按钮群组组合在一行。
基本示例
将一系列 <Button />
用 <ButtonGroup />
组合在一起。
按钮工具栏
将一系列 <ButtonGroup />
用 <ButtonToolbar />
组合成更复杂的组件。
尺寸
添加bsSize
属性到 <ButtonGroup />
可以实现对于组中的按钮尺寸统一设置,这样就不用一个一个设置按钮的尺寸属性了。
嵌套
你还可以将诸如 <DropdownButton />
代码放入 <ButtonGroup />
中。
垂直排列属性
增加 vertical
属性到 <ButtonGroup />
之中, 使得一系列按钮垂直堆叠在一起。 注意:不支持带分隔线的下拉按钮。
在增加 vertical
的同时,再增加 block
属性到 <ButtonGroup />
之中,则可以使按钮与区块同宽。
两端对齐按钮组
将一组按钮的宽度置为与其父组件的宽度相等,按钮组中的下拉框也同样受影响。
样式问题
在使用这个属性的时候会有一些问题,具体请参考 bootstrap 有关按钮群组的文档 以获得更详细的信息。
增加 两端对齐
属性到 <ButtonGroup />
之中。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
block | boolean | false | 块显示属性,设置后按钮同块的宽度相似; 仅在设置 "vertical" 属性时使用。 |
bsClass | string | 'btn-group' | 定义组件基础 CSS 及前缀。通常改变 |
justified | boolean | false | |
vertical | boolean | false |
DropdownButton, SplitButton, Dropdown 下拉列表
单个按钮下拉列表
使用 <DropdownButton />
生成下拉列表系列按钮。
带分隔线的下拉列表按钮
同样, 用 <SplitButton />
生成带分隔线的下拉列表按钮组件。
尺寸
不同尺寸的下拉列表按钮。
无指示属性
使用 noCaret
属性去除下拉三角指示。
向上弹出属性
增加 dropup
点击按钮时,下拉框向上弹出。
右对齐下拉属性
增加 pullRight
属性,触发下拉菜单时,下拉列表与按钮右对齐。
定制下拉框
如果下拉框不是你想要的样式,可以使用 Dropdown
组件显示定义 Toggle 和 Menu 组件。
需要加载选项
为方便起见 Toggle 和 Menu 组件做为 Dropdown 组件的静态资源。但你也可以从 /lib
目录直接导入它们 : require("react-bootstrap/lib/DropdownToggle")
.
定制下拉组件
如果需要进一步的定制,也可以不用 Toggle 和 Menu 组件, 一切都由开发者自已定制。为了让 Dropdown 组件知道定制组件的角色,将 bsRole
属性添加到你的 menu 或 toggle 组件。 下拉组件需要至少一个 bsRole="toggle"
属性,并要有唯一的 bsRole="menu"
组件。 定制的 toggle 和 menu 组件必须要能处理 refs 属性.
属性 Props
DropdownButton
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsSize | string | 定义组件尺寸的属性。 | |
bsStyle | string | 定义组件可视的或上下文相关的样式属性。 | |
componentClass | elementType | ButtonGroup | 使用一个此组件提供的定制化样式。 |
disabled | boolean | 组件是否禁用。 | |
dropup | boolean | 菜单将在 dropdown 按钮上方显示, 而不是在它的下边。 | |
id required | string|number | html id 属性, 必须 | |
noCaret | boolean | ||
onClose | function | 下拉框关闭时的回调函数。 | |
onSelect | function | 一个菜单按钮被选中时的回调函数。
| |
onToggle | function | controls open 下拉框可视情况发生变化时的回调。参数为
| |
open | boolean | controlled by: onToggle , initial prop: defaultOpen 下拉框是否可见 | |
pullRight | boolean | 菜单与下拉框右侧对齐 | |
role | string | 如果值为 | |
rootCloseEvent | one of: 'click' , 'mousedown' | 组件区域外操作而导致组件将关闭的事件 | |
title required | node |
SplitButton
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsSize | string | 定义组件尺寸的属性。 | |
bsStyle | string | 定义组件可视的或上下文相关的样式属性。 | |
componentClass | elementType | ButtonGroup | 使用一个此组件提供的定制化样式。 |
disabled | boolean | 组件是否禁用。 | |
dropup | boolean | 菜单将在 dropdown 按钮上方显示, 而不是在它的下边。 | |
href | string | ||
id required | string|number | html id 属性, 必须 | |
onClick | function | ||
onClose | function | 下拉框关闭时的回调函数。 | |
onSelect | function | 一个菜单按钮被选中时的回调函数。
| |
onToggle | function | controls open 下拉框可视情况发生变化时的回调。参数为
| |
open | boolean | controlled by: onToggle , initial prop: defaultOpen 下拉框是否可见 | |
pullRight | boolean | 菜单与下拉框右侧对齐 | |
role | string | 如果值为 | |
rootCloseEvent | one of: 'click' , 'mousedown' | 组件区域外操作而导致组件将关闭的事件 | |
title required | node | 带分隔线按钮的显示标题。 | |
toggleLabel | string | toggle 的辅助功能标签,未设定时使用 |
Dropdown
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
children | node | Dropdown 子结点,可以是一个 | |
componentClass | elementType | ButtonGroup | 使用一个此组件提供的定制化样式。 |
disabled | boolean | 组件是否禁用。 | |
dropup | boolean | 菜单将在 dropdown 按钮上方显示, 而不是在它的下边。 | |
id required | string|number | html id 属性, 必须 | |
onClose | function | 下拉框关闭时的回调函数。 | |
onSelect | function | 一个菜单按钮被选中时的回调函数。
| |
onToggle | function | controls open 下拉框可视情况发生变化时的回调。参数为
| |
open | boolean | controlled by: onToggle , initial prop: defaultOpen 下拉框是否可见 | |
pullRight | boolean | 菜单与下拉框右侧对齐 | |
role | string | 如果值为 | |
rootCloseEvent | one of: 'click' , 'mousedown' | 组件区域外操作而导致组件将关闭的事件 |
MenuItem 菜单项
这个组件定义下拉框中的一个菜单条目。
支持基础的链接属性,如 href
, target
, title
。
它也支持 Bootstrap MenuItem 的属性功能。
header
: 增加一个区块的标题标签divider
: 增加区块间一个水平分隔线disabled
: 菜单项显示为禁用以阻止点击升效eventKey
: 传给回调函数的事件KeyonSelect
: 当用户点击一个条目时调用的回调函数。
回调函数的参数为: event
和 eventKey
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | 高亮显示菜单项,表示菜单项被选中。 | |
bsClass | string | 'dropdown' | 定义组件基础 CSS 及前缀。通常改变 |
disabled | boolean | false | 禁用菜单项,使其不能被选中。 |
divider | all | false | 将此菜单项显示为水平分隔线,用在一组菜单项之间的区块分隔。 |
eventKey | any | 传送给 | |
header | boolean | false | 将菜单项的风格显示为标题头标签,用来描述一组菜单项 |
href | string | HTML | |
onClick | function | 菜单被点击时调用的回调函数。 | |
onSelect | function | 菜单被选中时调用的回调函数。
|
React-Bootstrap 使用很多 react-overlays 提供的功能来 构造弹出层。
Modal 弹出式对话框
静态显示
弹出式对话框(又称模态对话框)组件
基本示例
弹出式对话框包括标题头、主体和页脚。使用 <Modal/>
并结合其它组件来显示和隐藏弹出的对话框。<Modal/>
组件还有几个子组件: <Modal.Header/>
, <Modal.Title/>
, <Modal.Body/>
, 和 <Modal.Footer/>
, 这些可以用来填充对话框相关内容。
点击按钮感受一下弹出的对话框。
附加导入选项
对话框的页头、标题、主题和页脚是 <Modal/>
组件中可访问的静态资源,但也可以从 /lib
目录例如: require("react-bootstrap/lib/ModalHeader")
直接导入。
内嵌对话框
你需要将如下代码加入到工程,并保证容器有 modal-container
样式类。
.modal-container {
position: relative;
}
.modal-container .modal, .modal-container .modal-backdrop {
position: absolute;
}
使用标准 Bootstrap 方法定义对话框的尺寸。
也就是使用 "bsSize" 属性确定显示大对话框还是小对话框。
使用定制的 CSS 样式定义对话框的尺寸。
将定制的 css 样式施加到对话框的 div 的 "dialogClassName" 属性上,下面的例子就是展示一个定制宽度为 90% 宽的对话框。
属性 Props
Modal
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | true | 打开和关闭对话框时使用滑动及渐变动画 |
autoFocus | boolean | 为 | |
backdrop | one of: 'static' , true , false | 背景点击消失的组件属性,设为 'static' 时,在点击背景时不触发 "onHide" 回调函数 | |
bsClass | string | 'modal' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "lg" , "large" , "sm" , "small" | 定义组件尺寸的属性。 | |
dialogClassName | string | 应用到对话框 DOM 结点的 css 样式类 | |
dialogComponentClass | elementType | ModalDialog | 组件类型提供对话框内容标记功能。这个在你想使用自已的样式和标记生成定制化对话框组架时特别有用。 |
enforceFocus | boolean | 当设为 | |
keyboard | boolean | 按 Esc 键时关闭掉对话框 | |
onEnter | function | 在对话框切入前调用的回调函数 | |
onEntered | function | 在对话框结束切入时调用的回调函数 | |
onEntering | function | 在对话框开始切入时调用的回调函数 | |
onExit | function | 在对话框关闭前调用的回调函数 | |
onExited | function | 在对话框关闭完成时调用的回调函数 | |
onExiting | function | 在对话框开始关闭时调用的回调函数 | |
onHide | function | 当前点击标题关闭按钮或非静态背景区域调用的回调函数。 | |
show | boolean | 对话框显示时,值为真。 |
Modal.Header
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
aria-label | string | 'Close' | 'aria-label' 属性提供了存取关闭按钮标签的属性。这个对辅助阅读功能有用,当标签正文不可阅读时用到这个属性 readable. |
bsClass | string | 'modal-header' | 定义组件基础 CSS 及前缀。通常改变 |
closeButton | boolean | false | 明确组件是否包含一个关闭按钮 |
onHide | function | 当关闭按钮按下时调用的回调函数。在对话框组件内部使用时, onHide 将自动到父对话框的 |
Modal.Title
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'modal-title' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'h4' | 使用一个此组件提供的定制化样式。 |
Modal.Body
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'modal-body' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
Modal.Footer
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'modal-footer' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
Tooltip 提示工具
提示工具类似于链接 中的
title
属性,但有着更好的效果。
带移动触发 OverlayTrigger
使用 OverlayTrigger
来指定 tooltips 及显示位置
在正文内指定
将 tooltip 定位于正文内。
Tight pants next level keffiyeh 请将光标移到我上面you probably haven't heard of them. Photo booth beard raw denim letterpress vegan messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit american apparel 请将光标移到我上面 have a terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan chambray. A really ironic artisan whatever keytar, scenester farm-to-table banksy Austin twitter handle freegan cred raw denim single-origin coffee viral.
属性 Props
Overlay Trigger
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | elementType | Fade | 使用动画 |
defaultOverlayShown | boolean | false | Overlay 初始时是否显示。 |
delay | number | 显示或隐藏 Overlay 的延迟时间,毫秒为单位。 | |
delayHide | number | 隐藏 Overlay 的延迟时间,毫秒为单位。 | |
delayShow | number | 显示 Overlay 的延迟时间,毫秒为单位。 | |
onEnter | function | 在 Overlay 切入前调用的回调函数 | |
onEntered | function | 在 Overlay 结束切入时调用的回调函数 | |
onEntering | function | 在 Overlay 开始切入时调用的回调函数 | |
onExit | function | 在 Overlay 关闭前调用的回调函数 | |
onExited | function | 在 Overlay 关闭完成时调用的回调函数 | |
onExiting | function | 在 Overlay 开始关闭时调用的回调函数 | |
overlay required | node | Overlay 中的元素或正文 | |
placement | one of: 'top' , 'right' , 'bottom' , 'left' | 'right' | 设置 Overlay 的方向 |
rootClose | boolean | false | 指示当用户点击 Overlay 外部区域时,是否触发 onHide |
trigger | triggerType | array<triggerType> | ['hover', 'focus'] | 指示动作是否触发 Overlay 可视。 |
Tooltip
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
arrowOffsetLeft | number | string | Tooltip 箭头设为左部位置。 | |
arrowOffsetTop | number | string | Tooltip 箭头设为顶部位置。 | |
bsClass | string | 'tooltip' | 定义组件基础 CSS 及前缀。通常改变 |
id required | string|number | html id 属性, 用在辅助功能之中 | |
placement | one of: 'top' , 'right' , 'bottom' , 'left' | 'right' | 设置 Tooltip 位置方向。 |
positionLeft | number | string | Tooltip 设为左部位置。 | |
positionTop | number | string | Tooltip 设为顶部位置。 |
Popover 弹出框
弹出框 Popover, 提供类似 Tooltip 的形式显示弹出内容。
右边弹出
使用 OverlayTrigger
Popover 组件和 Tooltip 组件一样可以用在 OverlayTrigger
组件中。
Trigger 行为
不鼓励使用 "hover"
或 "focus"
来触发弹出层,因为他们使用键盘或触屏设备时不易使用。
在容器内部触发 Popover 组件
使用 container
控制需要增加弹出层的 DOM 元素。 这个元素必须是一个被定位的元素,使得定位能正确。
在滚动容器中定位弹出层元素
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
arrowOffsetLeft | number | string | 弹出框箭头设为左边位置。 | |
arrowOffsetTop | number | string | 弹出框箭头设为顶部位置。 | |
bsClass | string | 'popover' | 定义组件基础 CSS 及前缀。通常改变 |
id required | string | html id 属性,为辅助功能所必须 | |
placement | one of: 'top' , 'right' , 'bottom' , 'left' | 'right' | 设置 Popover 位置方向 |
positionLeft | number | string | 弹出框设为左边弹出。 | |
positionTop | number | string | 弹出框设为顶部弹出。 | |
title | node | 标题内容 |
Overlay 定制化弹出层
OverlayTrigger
组件提供了大多数场景下可以使用的强大功能,但由于抽象的级别较高,在构造更细致的功能或定制化的操作行为时缺少灵活性。在这种场景下,可以不使用触发器,直接使用 Overlay
组件。
使用 Overlay 来代替 Tooltip 或 Popover
不必使用 Tooltip
或 Popover
组件,生成定义的弹出层可在 Overlay
组件中定制一些属性。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | elementType | Fade | 使用动画 |
onEnter | function | 在 Overlay 切入前调用的回调函数 | |
onEntered | function | 在 Overlay 结束切入时调用的回调函数 | |
onEntering | function | 在 Overlay 开始切入时调用的回调函数 | |
onExit | function | 在 Overlay 关闭前调用的回调函数 | |
onExited | function | 在 Overlay 关闭完成时调用的回调函数 | |
onExiting | function | 在 Overlay 开始关闭时调用的回调函数 | |
onHide | function | 设置 | |
placement | one of: 'top' , 'right' , 'bottom' , 'left' | 'right' | 设置 Overlay 的方向 |
rootClose | boolean | false | 指示当用户点击 Overlay 外部区域时,是否触发 onHide |
show | boolean | false | 设置 Overlay 的可视属性 |
Nav, NavItem 导航
导航提供了两种样式: pills
以及 tabs
。 禁用一个导航标签可以使用disabled
。
下拉方式
使用NavDropdown
增加下载菜单。
堆叠式
使用 stacked
让按钮垂直排列。
两边对齐
使用 justified
让导航条充满父容器的宽度。
属生 Props
导航 Nav
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
activeHref | string | 导航条目的 | |
activeKey | any | 导航条目的 | |
bsClass | string | 'nav' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "tabs" , "pills" | 定义组件可视的或上下文相关的样式属性。 | |
justified | all | false | |
navbar | boolean | 在 Navbar 中使用时应用对齐风格,这个属性使用在 Navbar 中会自动设置上。 | |
onSelect | function | 当导航条目被选中时调用的回调。
| |
pullLeft | boolean | false | 浮动 Nav 至左侧. 当 |
pullRight | boolean | false | 浮动 Nav 至右侧. 当 |
role | string | 导航 ARIA 角色, 在 TabContainer 上下文中, 缺省值设为 "tablist", 可以被 Nav 重新设置。 当角色设为 "tablist" NavItem focus is managed according to the ARIA authoring practices for tabs: https://www.w3.org/TR/2013/WD-wai-aria-practices-20130307/#tabpanel | |
stacked | boolean | false | 导航条目以堆叠式进行排列 |
NavItem
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | false | |
disabled | boolean | false | |
eventKey | any | ||
href | string | ||
onClick | function | ||
onSelect | function | ||
role | string |
Navbar 导航条
导航条是站点或页面来处理顶部导航操作的基础组件。
支持其它全部 Bootstrap 样式用做属性。只需使用驼峰格式,并将 navbar 从中移除。
例如 navbar-fixed-top
变成属性时就写成 fixedTop
. 可以使用不同的属性 fixedTop
, fixedBottom
, staticTop
, inverse
, 以及 fluid
.
你可以在 Nav
或其它子组件中使用 pullRight
属性来实现右对齐。
导航条基本示例
附加导入选项
导航条 Header, Toggle, Brand, 和 Collapse 组件可以用为 <Navbar/>
组件中的静态资源,也可以直接从 /lib
目录,使用类似: require("react-bootstrap/lib/NavbarHeader")
语句导入。
响应式导航条
生成一个在移动设备上易于使用的导航条, 将 Navbar.Toggle
加入到导航条部,并将导航内容放在 Navbar.Collapse
组件中. Navbar
将自动展示或收缩他们。
设备 defaultExpanded
属性来确定导航条开展的扩展状态。 设置 collapseOnSelect
来使用得导航条在用户选择一个条目中自动收起。使用 expanded
和 onToggle
属性,你可更好的控制收起的行为。
表单
使用 Navbar.Form
组件可以给表单组件增加边距及对齐属性。
文本及非导航链接
链接或少量的文本可以放在 Navbar.Link
、Navbar.Text
组件中。
属性 Props
导航条
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsStyle | one of: "default" , "inverse" | 'default' | 定义组件可视的或上下文相关的样式属性。 |
collapseOnSelect | boolean | false | 当一个 最好使用 onSelect 回调来处理 |
componentClass | elementType | 'nav' | 为此组件设置一个定制化的风格 |
expanded | boolean | controlled by: onToggle , initial prop: defaultExpanded 显示设备 navbar 主体可视 | |
fixedBottom | boolean | false | 生成一个底部固定、随页面流动的导航条 |
fixedTop | boolean | false | 生成一个顶部固定的、随页面流动的导航条 |
fluid | boolean | false | 允许流动的导航条调整至页面或容器宽度而不是预设的屏幕宽度 |
inverse | boolean | false | 使用暗色的导航条 |
onSelect | function | 子
For basic closing behavior after all 注意:如果你是手工使用这个 | |
onToggle | function | controls navExpanded 当 | |
role | string | ||
staticTop | boolean | false | 生成全宽度的随页面流动的导航条 |
Navbar.Toggle
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
children | node | The toggle content, if left empty it will render the default toggle (seen above). | |
onClick | function |
Breadcrumb, Breadcrumb.Item 路径导航
在一个带有层次的导航结构中标明当前页面的位置。在当前的Breadcrumb.Item
使用 active
属性表示。
不要同时设置 active
和 href
属性。 active
属性将使用span
渲染界面,而不用 a
及 href
,当前页面条目不以链接方式显现。
路径导航示例
属性 Props
Breadcrumb
组件本身没有公共属性。
Breadcrumb.Item
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | false | 设为真时,使用 |
href | string |
| |
target | string |
| |
title | node |
|
Tabs, Tab, TabContainer, TabContent, TabPane Tab 页
增加快速、动态 Tab 功能以方便在不同分类页面间进行切换。
不受控方式
允许组件控制其自身的状态。
受控方式
通过属性传递激活状态。
无动画
将 animation
属性设为 false
具备下拉框的 Tabs
定制 Tab 布局
更复杂、灵活的布局使用 TabContainer
, TabContent
, 和TabPane
组件结合任意样式的 Nav
让你可以快速将自定的 Tabs 组件与其它组件组装在一起。
只需生成一套 NavItems,每个导航条使用 eventKey
属性与TabPane
的 eventKey 关联。将整个内容定义在 TabContainer
你就获得了定制化的Tab组件。下面的例子可以看出是一个使用栅格系统及元素来定制的。
属生 Props
Tabs
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
activeKey | any | controlled by: onSelect , initial prop: defaultActiveKey 值为 | |
animation | boolean | true | |
bsStyle | one of: 'tabs' , 'pills' | 'tabs' | 导航风格 |
id | requiredForA11y | ||
onSelect | function | controls activeKey 一个 Tab 被选中时激发的回调函数。
| |
unmountOnExit | boolean | false | 当前 Tab 页不可视时,卸载它们 (将其从 DOM 中删除) |
Tab
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | elementType | 显示或隐藏 | |
aria-labelledby | string | ||
bsClass | string | 'tab-pane' | 定义组件基础 CSS 及前缀。通常改变 |
disabled | boolean | ||
eventKey | any | 在一组结点中,区别此 | |
id | string | ||
onEnter | function | 如果 animation 值不是 false,则定义 onEnter 转场动画回调 | |
onEntered | function | 如果 animation 值不是 false,则定义 onEntered 转场动画回调 | |
onEntering | function | 如果 animation 值不是 false,则定义 onEntering 转场动画回调 | |
onExit | function | 如果 animation 值不是 false,则定义 onExit 转场动画回调 | |
onExited | function | 如果 animation 值不是 false,则定义 onExited 转场动画回调 | |
onExiting | function | 如果 animation 值不是 false,则定义 onExiting 转场动画回调 | |
tabClassName | string | tabClassName 是相关 NavItem 使用的样式名称 | |
title | node | ||
unmountOnExit | boolean | 当前 Tab 页不可视时,卸载它们 (将其从 DOM 中删除) |
TabContainer
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
activeKey | any | controlled by: onSelect , initial prop: defaultActiveKey 当前活动页的 | |
generateChildId | function | (eventKey, type) => `${this.props.id}-${type}-${key}` | 一个参数为
|
id | custom | HTML id attribute, required if no | |
onSelect | function | controls activeKey 一个 tab 被选中时调用的回调函数。 |
TabContent
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | elementType | true | 设置所有 |
bsClass | string | 'tab' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
unmountOnExit | boolean | false | 当前 Tab 页不可视时,卸载它们 (将其从 DOM 中删除) |
TabPane
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
animation | boolean | elementType | 显示或隐藏 | |
aria-labelledby | string | ||
bsClass | string | 'tab-pane' | 定义组件基础 CSS 及前缀。通常改变 |
eventKey | any | 在一组结点中,区别此 | |
id | string | ||
onEnter | function | 如果 animation 值不是 false,则定义 onEnter 转场动画回调 | |
onEntered | function | 如果 animation 值不是 false,则定义 onEntered 转场动画回调 | |
onEntering | function | 如果 animation 值不是 false,则定义 onEntering 转场动画回调 | |
onExit | function | 如果 animation 值不是 false,则定义 onExit 转场动画回调 | |
onExited | function | 如果 animation 值不是 false,则定义 onExited 转场动画回调 | |
onExiting | function | 如果 animation 值不是 false,则定义 onExiting 转场动画回调 | |
unmountOnExit | boolean | 当前 Tab 页不可视时,卸载它们 (将其从 DOM 中删除) |
分页 Pagination
是为站点或应用提供分页链接,实现多页分页的组件。设置 items
为页面总数。 activePage
属性说明激活的页面。
更多选项
例如 first
, last
, previous
, next
, boundaryLinks
以及 ellipsis
.
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
activePage | number | 1 | |
boundaryLinks | boolean | false | 为 |
bsClass | string | 'pagination' | 定义组件基础 CSS 及前缀。通常改变 |
buttonComponentClass | elementType | 按钮使用的定制组件风格 | |
ellipsis | boolean | node | true | 为 |
first | boolean | node | false | 为 |
items | number | 1 | |
last | boolean | node | false | 为 |
maxButtons | number | 0 | |
next | boolean | node | false | 为 |
onSelect | function | ||
prev | boolean | node | false | 为 |
Pager, Pager.Item 前后页导航
提供快速向前和向后按钮。
缺省为居中设置
对齐
向前 previous
或向后 next
属性设为 true
, 实现左对齐或右对齐。
禁用
将 disabled
属性设为 true
来禁用链接。
属性 Props
分页器 Pager
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'pager' | 定义组件基础 CSS 及前缀。通常改变 |
onSelect | function |
Pager.Item
Grid, Row, Col, Clearfix 网络系统
基本网格
<Col xs={12} md={8} />
<Col xs={6} md={4} />
<Col xs={6} md={4} />
<Col xs={6} md={4} />
<Col xs={6} xsOffset={6} />
<Col md={6} mdPush={6} />
<Col md={6} mdPull={6} />
清除修订
不加 Clearfix 时,在 sm
(768px ≤ width < 992px)。视图下显示不正确。
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla posuere.
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus.
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla posuere.
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus.
加上 Clearfix
, 可修订问题,栏目清除正确。
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla posuere.
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus.
<Clearfix visibleSmBlock />
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla posuere.
<Col sm={6} md={3} />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit tempor tellus.
属性 Props
网络 Grid
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'container' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 此组件使用的定制化类名 |
fluid | boolean | false | 将任何宽度的网格布局变为全宽布局. 增加 |
行 Row
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'row' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
列 Col
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'col' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
lg | number | 大型设备(≥1200px)上列的跨度(1-12),对应于样式前缀 | |
lgHidden | boolean | 大型设备上隐藏列,对应于样式前缀 | |
lgOffset | number | 大型设备上右移列数,对应于样式前缀 | |
lgPull | number | 大型设备上左移列排序,对应于样式前缀 | |
lgPush | number | 大型设备上右移列排序,对应于样式前缀 | |
md | number | 中型设备(≥992px)上列的跨度(1-12),对应于样式前缀 | |
mdHidden | boolean | 中型设备上隐藏列,对应于样式前缀 | |
mdOffset | number | 中型设备上右移列数,对应于样式前缀 | |
mdPull | number | 中型设备上左移列排序,对应于样式前缀 | |
mdPush | number | 中型设备上右移列排序,对应于样式前缀 | |
sm | number | 小型设备(<768px)上列的跨度(1-12),对应于样式前缀 | |
smHidden | boolean | 小型设备上隐藏列,对应于样式前缀 | |
smOffset | number | 小型设备上右移列数,对应于样式前缀 | |
smPull | number | 小型设备上左移列排序,对应于样式前缀 | |
smPush | number | 小型设备上右移列排序,对应于样式前缀 | |
xs | number | 极小设备(<768px)上列的跨度(1-12),对应于样式前缀 | |
xsHidden | boolean | 极小设备上隐藏列,对应于样式前缀 | |
xsOffset | number | 极小设备上右移列数,对应于样式前缀 | |
xsPull | number | 极小型设备上左移列排序,对应于样式前缀 | |
xsPush | number | 极小设备上右移列排序,对应于样式前缀 |
清除修订 Clearfix
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'clearfix' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
visibleLgBlock | boolean | 大型设备上使用 clearfix,相当于增加样式 | |
visibleMdBlock | boolean | 中型设备上使用 clearfix,相当于增加样式 | |
visibleSmBlock | boolean | 小型设备上使用 clearfix,相当于增加样式 | |
visibleXsBlock | boolean | 极小设备上使用 clearfix,相当于增加样式 |
Jumbotron 欢迎页
一个轻量型、灵活的组件,使用大型视窗显示站点的关键内容。
Hello, world!
This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'jumbotron' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
PageHeader 页面标题
使用 h1
能适当处理页面上留白及段落间的间隙。 它可以使用 h1
’的缺省 small
元素, 也可以使用其它组件。
Example page header Subtext for header
Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'page-header' | 定义组件基础 CSS 及前缀。通常改变 |
ListGroup, ListGroupItem 列表
列表组件可以用来显示一系列元素,不仅是简单的列表,也可以是复杂的、有定制化的内容。
缺省居中
- Item 1
- Item 2
- ...
链接
在ListGroupItem
设置 href
或者 onClick
属性,可以生产带链接或响应点击事件的条目元素。
状态风格
设置 active
或 disabled
属性为 true
可以高亮显示或禁用条目。
颜色风格
设置相关条目的 bsStyle
属性。
- Success
- Info
- Warning
- Danger
带有标题
设置 header
属性,可以产生一个结构化的条目, 有标题和正文区域。
使用定制化的子组件
直接使用 ListGroupItems 时, ListGroup 查看条目是否有 href 或 onClick 属性,这个属性用来关联 DOM 元素。当使用定制化的子组件时,要设置componentClass
属性以便明确输出到哪个 ListGroup
元素。
- Custom Child 1
- Custom Child 2
- Custom Child 3
属性 Props
ListGroup
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'list-group' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 可以定制本组件的样式,如果不指定,当每个 |
ListGroupItem
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | any | ||
bsClass | string | 'list-group-item' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "success" , "warning" , "danger" , "info" | 定义组件可视的或上下文相关的样式属性。 | |
disabled | any | ||
header | node | ||
href | string | ||
listItem | boolean | false | |
onClick | function | ||
type | string |
Table 表格
使用 striped
, bordered
, condensed
以及 hover
属性定制表格。
# | First Name | Last Name | Username |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jacob | Thornton | @fat |
3 | Larry the Bird |
响应式
使用 responsive
属性将在小型设备(under 768px)实现水平滚动。在大于 768px 宽的设备上,则没有变化。
# | 分栏标题 | 分栏标题 | 分栏标题 | 分栏标题 | 分栏标题 | 分栏标题 |
---|---|---|---|---|---|---|
1 | Table cell | Table cell | Table cell | Table cell | Table cell | Table cell |
2 | Table cell | Table cell | Table cell | Table cell | Table cell | Table cell |
3 | Table cell | Table cell | Table cell | Table cell | Table cell | Table cell |
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bordered | boolean | false | |
bsClass | string | 'table' | 定义组件基础 CSS 及前缀。通常改变 |
condensed | boolean | false | |
hover | boolean | false | |
responsive | boolean | false | |
striped | boolean | false |
Panel, PanelGroup, Accordion 面板
基本例子
缺省情况下, <Panel />
对于一些内容设定基础边框和边距。
还可以根据需求设定附带的属性,例如定制一个 onClick
方法来响应 div
元素的点击。
可伸缩面板
具备标题的面板
使用 header
就可轻松增加面板的标题。
面板标题
具备注脚的面板
在 footer
中可以增加按钮或提示。当上下文变量无意义时,要注意面板注脚不继承颜色和边距。
背景调整
和其它组件一样,使用 bsStyle
定制面板的风格,使其看起来更醒目。
Panel title
Panel title
Panel title
Panel title
Panel title
Panel title
结合表格及列表使用
使用 fill
属性,并将其设为 <Table />
或 <ListGroup />
元素,则这些元素将充满面板。
- Item 1
- Item 2
- …
受控制的面板组
PanelGroup
可由父组件进行控制。 activeKey
属性指定哪个面板打开。
不控制的面板组
PanelGroup
也可不受制,由组件自身维持打开的状态。 defaultActiveKey
属性指示初始时打开激活哪个面板。
面板折叠
<Accordion />
是 <PanelGroup accordion />
的简写,标志面板处在折叠状态。
属性 Props
Panels, Accordion
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'panel' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "success" , "warning" , "danger" , "info" , "default" , "primary" | 'default' | 定义组件可视的或上下文相关的样式属性。 |
collapsible | boolean | ||
defaultExpanded | boolean | false | |
eventKey | any | ||
expanded | boolean | ||
footer | node | ||
header | node | ||
headerRole | string | ||
id | string | number | ||
onEnter | function | ||
onEntered | function | ||
onEntering | function | ||
onExit | function | ||
onExited | function | ||
onExiting | function | ||
onSelect | function | ||
panelRole | string |
PanelGroup
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
accordion | boolean | false | |
activeKey | any | ||
bsClass | string | 'panel-group' | 定义组件基础 CSS 及前缀。通常改变 |
defaultActiveKey | any | ||
onSelect | function | ||
role | string |
Well 背景墙
使用背景墙可显示一组元素嵌入或分组的效果。
可选样式
通过附加的两个样式来控制边距及圆角样式。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'well' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "lg" , "large" , "sm" , "small" | 定义组件尺寸的属性。 |
FormGroup, FormControl, ControlLabel 表单
<FormControl>
组件将一个表单控件渲染成 Bootstrap 样式。 <FormGroup>
组件以相应的留白封装一个 Form 控件,支持标签、帮助内容和校验状态。为保证可存取,需要设置 <FormGroup>
中的 controlId
, 并使用 <ControlLabel>
设定标签。
<FormControl>
组件直接渲染 <input>
或其他指定的组件。如果你需要存取未受控的 <FormControl>
的值, 需要设定未受控输入的 ref
属性, 然后调用 ReactDOM.findDOMNode(ref)
来取出对应的 DOM 结点。
如果应用中包含了大量的 Form Group,最好构造一个新的组件来封装这些字段,完成标签、控件以及必要元素的渲染。我们没有提供这个组件,是因为各种场景太特殊了,没有办法提供一个统一的解决方案。
属性 Props
FormGroup
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'form-group' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "lg" , "large" , "sm" , "small" | 定义组件尺寸的属性。 | |
controlId | string | 设置 | |
validationState | one of: 'success' , 'warning' , 'error' , null |
FormControl
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'form-control' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "sm" , "small" , "lg" , "large" | 定义组件尺寸的属性。 | |
componentClass | elementType | 'input' | 使用一个此组件提供的定制化样式。 |
id | string | 没显式指定时 | |
inputRef | function |
| |
type | string | 组件类名为 |
ControlLabel
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'control-label' | 定义组件基础 CSS 及前缀。通常改变 |
htmlFor | string | Uses | |
srOnly | boolean | false |
Checkbox, Radio, FormControl.Static, HelpBlock 支持的控件
<FieldGroup>
表单的布局中支持的控件。 <FormControl>
用于 <input>
, <textarea>
, 以及 <select>
. <Checkbox>
和 <Radio>
分别用于 checkboxes and radios respectively, inline
说明渲染这些控件在同一行里。 <FormControl.Static>
用于静态文本。
属性 Props
Checkbox
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'checkbox' | 定义组件基础 CSS 及前缀。通常改变 |
disabled | boolean | false | |
inline | boolean | false | |
inputRef | function |
| |
validationState | one of: 'success' , 'warning' , 'error' , null |
|
Radio
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'radio' | 定义组件基础 CSS 及前缀。通常改变 |
disabled | boolean | false | |
inline | boolean | false | |
inputRef | function |
| |
validationState | one of: 'success' , 'warning' , 'error' , null |
|
FormControl.Static
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'form-control-static' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'p' | 使用一个此组件提供的定制化样式。 |
帮助区域
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'help-block' | 定义组件基础 CSS 及前缀。通常改变 |
Form 表单布局
一行内的表单
使用 <Form inline>
来代替 <form>
. JSX 将去除行间的留白,控件的留白让你自已控制。另外 Bootstrap 对于一行内表单控件的宽度缺省设为为 width: auto
,所以你需要根据需求设置相应的宽度。
水平表单
使用 <Form horizontal>
代替 <form>
, 然后使用 <Col>
来对齐标签和控件。这里不需要使用<Row>
<FormGroup>
在水平表单中将起到定义行的作用。
属性 Props
(只在水平或一行内表单的情况下才使用) 表单
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'form' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'form' | 使用一个此组件提供的定制化样式。 |
horizontal | boolean | false | |
inline | boolean | false |
InputGroup, InputGroup.Addon, InputGroup.Button 输入组
带附加功能的输入
将表单控制放在 <InputGroup>
中,就可以使用通常的或按钮的附加功能。外来的一些配置可能需要设置 CSS。
输入字体尺寸
<FormGroup>
或 <InputGroup>
中使用 bsSize
来改变输入控件的尺寸。它也影响附带的功能或其他选项。
属性 Props
InputGroup
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'input-group' | 定义组件基础 CSS 及前缀。通常改变 |
bsSize | one of: "lg" , "large" , "sm" , "small" | 定义组件尺寸的属性。 |
InputGroup.Addon
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'input-group-addon' | 定义组件基础 CSS 及前缀。通常改变 |
InputGroup.Button
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'input-group-btn' | 定义组件基础 CSS 及前缀。通常改变 |
FormControl.Feedback 检验状态
validationState
可设置为 'success'
, 'warning'
或 'error'
中间的一个,用来指示校验状态。将 validationState
设为 null
(或 undefined
) 隐藏校验状态。 <FormControl.Feedback>
用来在有校验状态时显示一个反馈图标。
属性 Props
FormControl.Feedback
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'form-control-feedback' | 定义组件基础 CSS 及前缀。通常改变 |
Image 图像
形状
使用 rounded
, circle
和 thumbnail
属性可以定制图像的形状。
响应式
使用 responsive
可以较好的根据父元素缩放图像
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'img' | 定义组件基础 CSS 及前缀。通常改变 |
circle | boolean | false | 设置图像为圆形 |
responsive | boolean | false | 设置图像为响应式 |
rounded | boolean | false | 设置图像带圆角 |
thumbnail | boolean | false | 设置图像为缩略图 |
Thumbnail 缩略图
缩略图用于标志图像而使用的,你可以扩展 grid 组件。
带提示的 Thumbnail
在图像周边显示提示框
分离 Thumbnail
在图像及其他子元素周边显示提示框。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
alt | string | ||
bsClass | string | 'thumbnail' | 定义组件基础 CSS 及前缀。通常改变 |
href | string | ||
src | string |
ResponsiveEmbed 响应式 iframe 嵌入
允许浏览器基于容器块的尺寸决定视频或幻灯片的维度,产生的比率及缩放可以适合所有设备。
你无需在 iframe
里使用 frameborder="0"
。
不管是 16:9 还是 4:3 的比率必须通过 a16by9
或 a4by3
属性来设置。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
a16by9 | boolean | false | 16x9 比率 |
a4by3 | boolean | false | 4x3 比率 |
bsClass | string | 'embed-responsive' | 定义组件基础 CSS 及前缀。通常改变 |
children required | element | 这个组件需要单一的子结点。 |
Carousel, Carousel.Item, Carousel.Caption 走马灯
不受控的
允许组件控制自已的状态
受控的
通过属性传递激活状态。
属性 Props
Carousel
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
activeIndex | number | ||
bsClass | string | 'carousel' | 定义组件基础 CSS 及前缀。通常改变 |
controls | boolean | true | |
defaultActiveIndex | number | ||
direction | one of: 'prev' , 'next' | ||
indicators | boolean | true | |
interval | number | 5000 | |
nextIcon | node | <Glyphicon glyph="chevron-right" /> | |
nextLabel | string | 'Next' | 提供给屏幕阅读器的标签,用于显示走马灯中下一个元素。 设为 null 使不激活。 |
onSelect | function | 当激活条目发生变化时调用的回调函数
如果回调函数有两个以上的参数时,第二个参数将是一个具有 | |
onSlideEnd | function | ||
pauseOnHover | boolean | true | |
prevIcon | node | <Glyphicon glyph="chevron-left" /> | |
prevLabel | string | 'Previous' | 提供给屏幕阅读器的标签,用于显示走马灯中前一个元素。 设为 null 使不激活。 |
slide | boolean | true | |
wrap | boolean | true |
Carousel.Item
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | false | |
animateIn | boolean | false | |
animateOut | boolean | false | |
direction | one of: 'prev' , 'next' | ||
index | number | ||
onAnimateOutEnd | function |
Carousel.Caption
Media, Media.Left, Media.Right, Media.Heading, Media.List, Media.ListItem 媒体对象
为系列对象列表定义的抽象对象样式, (例如博客的回复、推文等) 。使用 left
或 right
来说明图像在正文件的左边还是右边
媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
嵌入媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
媒体对齐
图像或其它媒体元素的顶、中、底对齐方式,缺省是顶对齐。
顶对齐
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
中间对齐
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
底对齐
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
Donec sed odio dui. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
媒体列表
你可以列表中使用媒体 (用于多线索的树形回复,或者文章列表等)。
媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
嵌套的媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
嵌套的媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
嵌套媒体标题
正文内容,Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis.
属性 Props
Media
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'media' | 定义组件基础 CSS 及前缀。通常改变 |
componentClass | elementType | 'div' | 使用一个此组件提供的定制化样式。 |
Media.Left
Media.Right
Media.Heading
Media.Body
Glyphicon 字体图标
字体图标可以用在 buttons, Toolbar、导航中的 button groups, 或预设的表单输入中。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'glyphicon' | 定义组件基础 CSS 及前缀。通常改变 |
glyph required | string |
Label 标签
使用 <Label>标签</Label>
来突出信息。
Label New
Label New
Label New
Label New
Label New
Label New
可用的变量
使用下面的修饰样式来改变标签的外观。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'label' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "success" , "warning" , "danger" , "info" , "default" , "primary" | 'default' | 定义组件可视的或上下文相关的样式属性。 |
Badge 角标
<Badge>
用于显示未处理的内容条目的数量,用在链接、导航等处。
Badges 42
夸浏览器支持
和通常的 Bootstrap 不一样, 角标在 Internet Explorer 8 会折叠。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'badge' | 定义组件基础 CSS 及前缀。通常改变 |
pullRight | boolean | false |
Alert 警告信息
基本的警告信息样式。
可关闭的警告信息
通过 onDismiss
函数传递。
Oh snap! You got an error!
Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.
or
屏幕辅助阅读功能
和正常的 Bootstrap 不同, 在正文后警告有一个 sr-only 关闭按钮。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
bsClass | string | 'alert' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "success" , "warning" , "danger" , "info" | 'info' | 定义组件可视的或上下文相关的样式属性。 |
closeLabel | string | 'Close alert' | |
onDismiss | function |
ProgressBar 进度条
为一个长的操作或流程提供及时的反馈
基本示例
缺省进度条。
带标签进度条
增加 label
属性来显示进度的百分比。考虑到百分比低的情况,可以增加 min-width 属性来确保标签完全可见。
只用于屏幕阅读器的标签
增加 srOnly
属性给屏幕阅读器使用。
上下文相关
进度条也可以使用按钮或警告类似风格的样式。
带条纹
使用带坡度的条纹指示,IE8 不可用。
动画
增加 active
属性让条纹从右至左动起来,IE9及以下的版本不可用。
层叠
嵌套 <ProgressBar />
可以将进度条层叠起来。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
active | boolean | false | |
bsClass | string | 'progress-bar' | 定义组件基础 CSS 及前缀。通常改变 |
bsStyle | one of: "success" , "warning" , "danger" , "info" | 定义组件可视的或上下文相关的样式属性。 | |
children | onlyProgressBar | ||
label | node | ||
max | number | 100 | |
min | number | 0 | |
now | number | ||
srOnly | boolean | false | |
striped | boolean | false |
Collapse, Fade 转场动画
转场动画组件让他们的子组件以动画方式显示或褪出。
折叠
为一个元素或组件增加折叠动画。
平滑的动画过程
如果你发现动画组件折叠后有非零的边距和留白,尝试将内容放在 你自已的 <Collapse>
结点中,结点没有边距和留白。这使得高度可以被正确计算,而且动画也能处理的比较平滑。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
dimension | one of: 'height' , 'width' | function | 'height' | 折叠时使用的维数,或者返回维数的函数 注意: Bootstrap 只部分支持 'width'!
你需要为 |
getDimensionValue | function | getDimensionValue | 返回动画 DOM 结点高或宽的函数 允许提供一些定制化的逻辑以实现折叠组件在某个维度上的动画。调用参数为当前维数属性以及 DOM 结点。 |
in | boolean | false | 显示组件,触发展开或折叠动画 |
onEnter | function | 组件展开前调用的回调函数 | |
onEntered | function | 组件展开后调用的回调函数 | |
onEntering | function | 组件展开开始时调用的回调函数 | |
onExit | function | 组件折叠前调用的回调函数 | |
onExited | function | 组件折叠后调用的回调函数 | |
onExiting | function | 组件折叠开始时调用的回调函数 | |
role | string | ARIA 折叠元素的角色 | |
timeout | number | 300 | 折叠动画的超时时间,确保结束回调可以被调用,即使浏览器的动画结束事件被取消 |
transitionAppear | boolean | false | 初始化显示时,加载组件时显示动画效果。 |
unmountOnExit | boolean | false | 折叠时卸载组件 (从 DOM 中删除) |
Fade
为一个元素或组件增加渐显渐褪动画。
属性 Props
名称 | 类型 | 缺省值 | 说明 |
---|---|---|---|
in | boolean | false | 显示组件,触发展开或折叠动画 |
onEnter | function | 组件逐渐显示前调用的回调函数 | |
onEntered | function | 组件完全显示后调用的回调函数 | |
onEntering | function | 组件逐渐显示开始时调用的回调函数 | |
onExit | function | 组件褪出前调用的回调函数 | |
onExited | function | 组件褪出后调用的回调函数 | |
onExiting | function | 组件褪出开始时调用的回调函数 | |
timeout | number | 300 | 折叠动画的超时时间,确保结束回调可以被调用,即使浏览器的动画结束事件被取消 |
transitionAppear | boolean | false | 初始化显示时,加载组件时显示动画效果。 |
unmountOnExit | boolean | false | 褪出时卸载组件 (从 DOM 中删除) |
定制样式
bsStyle
属性在许多 React-Bootstrap 组件中都可以使用, 用来映射到一个 Bootstrap 样式上。例如, Bootstrap Button
使用的样式是 `btn-${bsStyle}`
. 使用 bootstrapUtils
生成一个定制样式来代替 Bootstrap 提供的样式:
附加侧栏导航 Affix
使用 react-overlays 的 <AutoAffix>
或 <Affix>
组件
这里并不是使用 Bootstrap 特性组装起来的侧栏导航,所以不会增加任何 Bootstrap 特有的 affix 样式。但功能上可以提供你所需要的一切。
滚动监听 Scrollspy
要建立一个符合 React 方式的滚动监听体系,需要将整个页面里大量的组件包裹起来,并处理滚动和导航。一个独立的组件难以完成,所以不适合做为一个组件放入组件库。
要实现这个功能,请参考类似 React Waypoint 的库,需要你自已实现一点状态管理。 你可以参考我们实现边栏的方式,代码就在 文档源代码 里。