]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Reset text/font properties more thoroughly for tooltips+popovers; fixes #15925 16086/head
authorChris Rebert <code@rebertia.com>
Mon, 16 Mar 2015 21:48:49 +0000 (14:48 -0700)
committerChris Rebert <code@rebertia.com>
Wed, 8 Apr 2015 07:52:10 +0000 (00:52 -0700)
[skip sauce]

less/mixins.less
less/mixins/reset-text.less [new file with mode: 0644]
less/popovers.less
less/tooltip.less

index af4408fc2d6846b5656d9d0d12f2f4cbf4404cf6..e6f9fe684b7a3358a00c39b8909bbd9a7c65bdda 100644 (file)
@@ -11,6 +11,7 @@
 @import "mixins/responsive-visibility.less";
 @import "mixins/size.less";
 @import "mixins/tab-focus.less";
+@import "mixins/reset-text.less";
 @import "mixins/text-emphasis.less";
 @import "mixins/text-overflow.less";
 @import "mixins/vendor-prefixes.less";
diff --git a/less/mixins/reset-text.less b/less/mixins/reset-text.less
new file mode 100644 (file)
index 0000000..58dd4d1
--- /dev/null
@@ -0,0 +1,18 @@
+.reset-text() {
+  font-family: @font-family-base;
+  // We deliberately do NOT reset font-size.
+  font-style: normal;
+  font-weight: normal;
+  letter-spacing: normal;
+  line-break: auto;
+  line-height: @line-height-base;
+  text-align: left; // Fallback for where `start` is not supported
+  text-align: start;
+  text-decoration: none;
+  text-shadow: none;
+  text-transform: none;
+  white-space: normal;
+  word-break: normal;
+  word-spacing: normal;
+  word-wrap: normal;
+}
index 2748eead13fa69dc8e7d32a1f0f64e6edb71e6e5..3a62a6455ac11c91fc20d63db2f49b9a7d872c15 100644 (file)
   display: none;
   max-width: @popover-max-width;
   padding: 1px;
-  // Reset font and text properties given new insertion method
-  font-family: @font-family-base;
+  // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element.
+  // So reset our font and text properties to avoid inheriting weird values.
+  .reset-text();
   font-size: @font-size-base;
-  font-weight: normal;
-  line-height: @line-height-base;
-  text-align: left;
+
   background-color: @popover-bg;
   background-clip: padding-box;
   border: 1px solid @popover-fallback-border-color;
@@ -24,9 +23,6 @@
   border-radius: @border-radius-large;
   .box-shadow(0 5px 10px rgba(0,0,0,.2));
 
-  // Overrides for proper insertion
-  white-space: normal;
-
   // Offset the popover to account for the popover arrow
   &.top     { margin-top: -@popover-arrow-width; }
   &.right   { margin-left: @popover-arrow-width; }
index 90207b54a680d71481e0d7218f0917111ef3bde0..b48d63e07ad880200cafb5c110acfc14e76ea7cf 100644 (file)
@@ -8,12 +8,11 @@
   position: absolute;
   z-index: @zindex-tooltip;
   display: block;
-  // Reset font and text properties given new insertion method
-  font-family: @font-family-base;
+  // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
+  // So reset our font and text properties to avoid inheriting weird values.
+  .reset-text();
   font-size: @font-size-small;
-  font-weight: normal;
-  line-height: @line-height-base;
-  text-decoration: none;
+
   .opacity(0);
 
   &.in     { .opacity(@tooltip-opacity); }