]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
v5: Drop .media (#28265)
authorMark Otto <otto@github.com>
Wed, 8 May 2019 18:45:24 +0000 (11:45 -0700)
committerXhmikosR <xhmikosr@gmail.com>
Wed, 8 May 2019 18:45:24 +0000 (21:45 +0300)
scss/_media.scss [deleted file]
scss/bootstrap.scss
site/content/docs/4.3/components/media-object.md [deleted file]
site/content/docs/4.3/layout/overview.md
site/content/docs/4.3/migration.md
site/content/docs/4.3/utilities/stretched-link.md
site/data/nav.yml

diff --git a/scss/_media.scss b/scss/_media.scss
deleted file mode 100644 (file)
index b573052..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-.media {
-  display: flex;
-  align-items: flex-start;
-}
-
-.media-body {
-  flex: 1;
-}
index 9f15c2a8bc835aef69053600ed2c71de7f20215d..112e28af8f9aaa0e6fd4c73577ad0e7601cc37db 100644 (file)
@@ -31,7 +31,6 @@
 @import "jumbotron";
 @import "alert";
 @import "progress";
-@import "media";
 @import "list-group";
 @import "close";
 @import "toasts";
diff --git a/site/content/docs/4.3/components/media-object.md b/site/content/docs/4.3/components/media-object.md
deleted file mode 100644 (file)
index 3e295f8..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
----
-layout: docs
-title: Media object
-description: Documentation and examples for Bootstrap's media object to construct highly repetitive components like blog comments, tweets, and the like.
-group: components
-toc: true
----
-
-## Example
-
-The [media object](http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/) helps build complex and repetitive components where some media is positioned alongside content that doesn't wrap around said media. Plus, it does this with only two required classes thanks to flexbox.
-
-Below is an example of a single media object. Only two classes are required—the wrapping `.media` and the `.media-body` around your content. Optional padding and margin can be controlled through [spacing utilities]({{< docsref "/utilities/spacing" >}}).
-
-{{< example >}}
-<div class="media">
-  {{< placeholder width="64" height="64" class="mr-3" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Media heading</h5>
-    Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-  </div>
-</div>
-{{< /example >}}
-
-{{< callout warning >}}
-##### Flexbug #12: Inline elements aren't treated as flex items
-
-Internet Explorer 10-11 do not render inline elements like links or images (or `::before` and `::after` pseudo-elements) as flex items. The only workaround is to set a non-inline `display` value (e.g., `block`, `inline-block`, or `flex`). We suggest using `.d-flex`, one of our [display utilities]({{< docsref "/utilities/display" >}}), as an easy fix.
-
-**Source:** [Flexbugs on GitHub](https://github.com/philipwalton/flexbugs#flexbug-12)
-{{< /callout >}}
-
-## Nesting
-
-Media objects can be infinitely nested, though we suggest you stop at some point. Place nested `.media` within the `.media-body` of a parent media object.
-
-{{< example >}}
-<div class="media">
-  {{< placeholder width="64" height="64" class="mr-3" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Media heading</h5>
-    Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-
-    <div class="media mt-3">
-      <a class="mr-3" href="#">
-        {{< placeholder width="64" height="64" >}}
-      </a>
-      <div class="media-body">
-        <h5 class="mt-0">Media heading</h5>
-        Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-      </div>
-    </div>
-  </div>
-</div>
-{{< /example >}}
-
-## Alignment
-
-Media in a media object can be aligned with flexbox utilities to the top (default), middle, or end of your `.media-body` content.
-
-{{< example >}}
-<div class="media">
-  {{< placeholder width="64" height="64" class="align-self-start mr-3" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Top-aligned media</h5>
-    <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p>
-    <p>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.</p>
-  </div>
-</div>
-{{< /example >}}
-
-{{< example >}}
-<div class="media">
-  {{< placeholder width="64" height="64" class="align-self-center mr-3" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Center-aligned media</h5>
-    <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p>
-    <p class="mb-0">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.</p>
-  </div>
-</div>
-{{< /example >}}
-
-{{< example >}}
-<div class="media">
-  {{< placeholder width="64" height="64" class="align-self-end mr-3" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Bottom-aligned media</h5>
-    <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p>
-    <p class="mb-0">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.</p>
-  </div>
-</div>
-{{< /example >}}
-
-## Order
-
-Change the order of content in media objects by modifying the HTML itself, or by adding some custom flexbox CSS to set the `order` property (to an integer of your choosing).
-
-{{< example >}}
-<div class="media">
-  <div class="media-body">
-    <h5 class="mt-0 mb-1">Media object</h5>
-    Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-  </div>
-  {{< placeholder width="64" height="64" class="ml-3" >}}
-</div>
-{{< /example >}}
-
-## Media list
-
-Because the media object has so few structural requirements, you can also use these classes on list HTML elements. On your `<ul>` or `<ol>`, add the `.list-unstyled` to remove any browser default list styles, and then apply `.media` to your `<li>`s. As always, use spacing utilities wherever needed to fine tune.
-
-{{< example >}}
-<ul class="list-unstyled">
-  <li class="media">
-    {{< placeholder width="64" height="64" class="mr-3" >}}
-    <div class="media-body">
-      <h5 class="mt-0 mb-1">List-based media object</h5>
-      Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-    </div>
-  </li>
-  <li class="media my-4">
-    {{< placeholder width="64" height="64" class="mr-3" >}}
-    <div class="media-body">
-      <h5 class="mt-0 mb-1">List-based media object</h5>
-      Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-    </div>
-  </li>
-  <li class="media">
-    {{< placeholder width="64" height="64" class="mr-3" >}}
-    <div class="media-body">
-      <h5 class="mt-0 mb-1">List-based media object</h5>
-      Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.
-    </div>
-  </li>
-</ul>
-{{< /example >}}
index 87f8691930fa0ddf044a23184dfef290cf9e77ef..dd2f34691512266e45f3f81324929c935af5000e 100644 (file)
@@ -1,7 +1,7 @@
 ---
 layout: docs
 title: Overview
-description: Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, a flexible media object, and responsive utility classes.
+description: Components and options for laying out your Bootstrap project, including wrapping containers, a powerful grid system, and responsive utility classes.
 group: layout
 aliases: "/docs/4.3/layout/"
 toc: true
index d06c3f703adf8857fe8a0b10eddbe37bfd49df87..2d72b893de1ddca9e6b39e872d59fbee48ab54f2 100644 (file)
@@ -43,7 +43,7 @@ Changes to our source and compiled JavaScript files.
 
 Changes to any layout tools and our grid system.
 
-- Dropped `.media` component as it can be built with utility classes
+- Dropped `.media` component as it can be built with utility classes. [See #28265](https://github.com/twbs/bootstrap/pull/28265).
 - **Todo:** Remove `position: relative` from grid columns
 - **Todo:** Integrate CSS grid into our grid system
 
index 7207bcaf5a8a54fd0d2e29618b3b8bec8fa61cb7..ad8a703cad40b8491df7945522d2d8bdd46514c3 100644 (file)
@@ -22,13 +22,13 @@ Multiple links and tap targets are not recommended with stretched links. However
 </div>
 {{< /example >}}
 
-Media objects do not have `position: relative` by default, so we need to add the `.position-relative` here to prevent the link from stretching outside the media object.
+Most custom components do not have `position: relative` by default, so we need to add the `.position-relative` here to prevent the link from stretching outside the parent element.
 
 {{< example >}}
-<div class="media position-relative">
-  {{< placeholder width="144" height="144" class="mr-3" text="false" title="Generic placeholder image" >}}
-  <div class="media-body">
-    <h5 class="mt-0">Media with stretched link</h5>
+<div class="d-flex position-relative">
+  {{< placeholder width="144" height="144" class="flex-shrink-0 mr-3" text="false" title="Generic placeholder image" >}}
+  <div>
+    <h5 class="mt-0">Custom component with stretched link</h5>
     <p>Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.</p>
     <a href="#" class="stretched-link">Go somewhere</a>
   </div>
index 324304cbd5451db0356c4208de4b5290a3aab04f..27d7ba71a40498cd287e019209e526a3c69e9b10 100644 (file)
@@ -41,7 +41,6 @@
     - title: Input group
     - title: Jumbotron
     - title: List group
-    - title: Media object
     - title: Modal
     - title: Navs
     - title: Navbar