diff --git a/docs/assets/style.css b/docs/assets/style.css
index 8821e2ba6e..d03afccb44 100644
--- a/docs/assets/style.css
+++ b/docs/assets/style.css
@@ -165,3 +165,10 @@ body {
.prop-table {
background-color: white;
}
+
+.bs-example.tooltip-static .tooltip {
+ position: relative;
+ display: inline-block;
+ margin: 5px 10px;
+
+}
diff --git a/docs/examples/.eslintrc b/docs/examples/.eslintrc
index 6f2fa1bdf5..9dbc49c623 100644
--- a/docs/examples/.eslintrc
+++ b/docs/examples/.eslintrc
@@ -36,6 +36,7 @@
"ModalTrigger",
"OverlayTrigger",
"OverlayMixin",
+ "Overlay",
"PageHeader",
"PageItem",
"Pager",
diff --git a/docs/examples/ModalContained.js b/docs/examples/ModalContained.js
index 626f17db42..aeab199ef7 100644
--- a/docs/examples/ModalContained.js
+++ b/docs/examples/ModalContained.js
@@ -9,28 +9,40 @@
* }
*/
-const ContainedModal = React.createClass({
- render() {
- return (
-
Ipsum molestiae natus adipisci modi eligendi? Debitis amet quae unde commodi aspernatur enim, consectetur. Cumque deleniti temporibus ipsam atque a dolores quisquam quisquam adipisci possimus laboriosam. Quibusdam facilis doloribus debitis! Sit quasi quod accusamus eos quod. Ab quos consequuntur eaque quo rem! Mollitia reiciendis porro quo magni incidunt dolore amet atque facilis ipsum deleniti rem! Dolores debitis voluptatibus ipsum dicta. Dolor quod amet ab sint esse distinctio tenetur. Veritatis laudantium quibusdam quidem corporis architecto veritatis. Ex facilis minima beatae sunt perspiciatis placeat. Quasi corporis @@ -19,10 +22,10 @@ const MyModal = React.createClass({ magni delectus maxime. Sit odit provident vel magnam quod. Possimus eligendi non corrupti tenetur culpa accusantium quod quis. Voluptatum quaerat animi dolore maiores molestias voluptate? Necessitatibus illo omnis laborum hic enim minima! Similique. Dolor voluptatum reprehenderit nihil adipisci aperiam voluptatem soluta magnam accusamus iste incidunt tempore consequatur illo illo odit. Asperiores nesciunt iusto nemo animi ratione. Sunt odit similique doloribus temporibus reiciendis! Ullam. Dolor dolores veniam animi sequi dolores molestias voluptatem iure velit. Elit dolore quaerat incidunt enim aut distinctio. Ratione molestiae laboriosam similique laboriosam eum et nemo expedita. Consequuntur perspiciatis cumque dolorem.
-Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
@@ -13,10 +16,10 @@ const MySmallModal = React.createClass({Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
@@ -37,24 +43,37 @@ const MyLargeModal = React.createClass({Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
- -TODO
- -TODO
- -Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-Click to get the full Modal experience!
+ + + +Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
+ +there is a
there is a
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
+Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
+Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
+Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
+Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
+Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
+Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
+Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
+Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
+
- Tight pants next level keffiyeh
A rendered modal with header, body, and set of actions in the footer.
-The header is added automatically if you pass in a title
prop.
+ A rendered modal with header, body, and set of actions in the footer. The {'
Component comes with
+ a few convenient "sub components": {'
, {'
, {'
,
+ and {'
, which you can use to build the Modal content.
+
+ The Modal Header, Title, Body, and Footer components are available as static properties the {'
component, but you can also,
+ import them directly from the /lib
directory like: {"require('react-bootstrap/lib/ModalHeader')"}
.
+
Use <ModalTrigger />
to create a real modal that's added to the document body when opened.
Use {'
in combination with other components to show or hide your Modal.
Use OverlayMixin
in a custom component to manage the modal's state yourself.
You will need to add the following css to your project and ensure that your container has the modal-container
class.
{React.DOM.code(null, @@ -301,40 +307,57 @@ const ComponentsPage = React.createClass({Modal
- ModalTrigger
+Modal.Header
++ + Modal.Title
++ + Modal.Body
++ + Modal.Footer
++ + ModalTrigger Deprecated: use the Modal directly to manage it's visibility
Tooltip component.
-
+ Tooltip component for a more stylish alternative to that anchor tag title
attribute.
+
Positioned tooltip component.
+Attach and position tooltips with OverlayTrigger
.
Positioned tooltip in copy.
+Positioned tooltip in text copy.
Popover component.
-+ The Popover, offers a more robust alternative to the Tooltip for displaying overlays of content. +
+Positioned popover component.
+The Popover component, like the Tooltip can be used with an OverlayTrigger
Component, and positioned around it.
Trigger behaviors. It's inadvisable to use "hover"
or "focus"
triggers for popovers, because they have poor accessibility from keyboard and on mobile devices.
+ The OverlayTrigger
component is great for most use cases, but as a higher level abstraction it can lack the flexibility needed
+ to build more nuanced or custom behaviors into your Overlay components. For these cases it can be helpful to forgo the trigger and use
+ the Overlay
component directly.
+
+ You don't need to use the provided Tooltip
or Popover
components. Creating custom overlays
+ is as easy as wrapping some markup in an Overlay
component
+
+ A Component that renders its children into a new React "subtree" or container
. The Portal component kind of like the React
+ equivalent to jQuery's .appendTo()
, which is helpful for components that need to be appended to a DOM node other than
+ the component's direct parent. The Modal, and Overlay components use the Portal component internally.
+
+ A Component that absolutely positions its child to a target
component or DOM node. Useful for creating custom
+ popups or tooltips. Used by the Overlay Components.
+