toolbar-button.css

Same filename and directory in other branches
  1. 10 core/modules/navigation/components/toolbar-button/toolbar-button.css

Toolbar button styles.

File

core/modules/navigation/components/toolbar-button/toolbar-button.css

View source
  1. /*
  2. * DO NOT EDIT THIS FILE.
  3. * See the following change record for more information,
  4. * https://www.drupal.org/node/3084859
  5. * @preserve
  6. */
  7. /* cspell:ignore csvg cpath wght */
  8. /**
  9. * @file
  10. * Toolbar button styles.
  11. */
  12. [data-drupal-admin-styles] {
  13. --toolbar-button-outline-offset: 0;
  14. --toolbar-button-bg: transparent;
  15. --toolbar-button-color: var(--admin-toolbar-color-gray-800);
  16. /* Hover styles. */
  17. --toolbar-button-hover-bg: var(--admin-toolbar-color-gray-050);
  18. --toolbar-button-hover-color: var(--admin-toolbar-color-gray-990);
  19. /* Focus variables. */
  20. --toolbar-button-focus-color: var(--admin-toolbar-color-blue-700);
  21. /* Current variables */
  22. --toolbar-button-current-bg: var(--admin-toolbar-color-gray-050);
  23. --toolbar-button-current-color: var(--admin-toolbar-color-blue-700);
  24. /* Active child variables. */
  25. --toolbar-button-has-active-child-bg: var(--admin-toolbar-color-gray-050);
  26. --toolbar-button-has-active-child-color: var(--admin-toolbar-color-gray-950);
  27. /* Icon */
  28. --toolbar-button-icon-size: var(--admin-toolbar-space-20);
  29. }
  30. .toolbar-button {
  31. z-index: 1;
  32. flex-grow: 0;
  33. align-items: center;
  34. min-height: var(--admin-toolbar-space-40);
  35. cursor: pointer;
  36. text-align: start;
  37. -webkit-text-decoration: none;
  38. text-decoration: none;
  39. overflow-wrap: break-word;
  40. color: var(--toolbar-button-color);
  41. border: 0;
  42. border-radius: var(--admin-toolbar-space-8);
  43. background-color: var(--toolbar-button-bg);
  44. font-size: var(--admin-toolbar-font-size-info-sm);
  45. line-height: var(--admin-toolbar-line-height-info-sm);
  46. padding-inline: var(--admin-toolbar-space-16);
  47. padding-block: var(--admin-toolbar-space-10);
  48. font-variation-settings: "wght" 700;
  49. gap: calc(0.5 * var(--admin-toolbar-rem));
  50. }
  51. .toolbar-button:has(+ .toolbar-popover__wrapper .is-active) {
  52. color: var(--toolbar-button-has-active-child-color);
  53. background-color: var(--toolbar-button-has-active-child-bg);
  54. }
  55. :is(.toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress--throbber), .toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress-throbber)) .toolbar-button__icon {
  56. fill: transparent;
  57. background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3e %3cstyle%3e %40keyframes spinner%7bto%7btransform:rotate(360deg)%7d%7d %3c/style%3e %3cpath d='M12 1a11 11 0 1 0 11 11A11 11 0 0 0 12 1Zm0 19a8 8 0 1 1 8-8 8 8 0 0 1-8 8Z' opacity='.25'/%3e %3cpath d='M10.14 1.16a11 11 0 0 0-9 8.92A1.59 1.59 0 0 0 2.46 12a1.52 1.52 0 0 0 1.65-1.3 8 8 0 0 1 6.66-6.61A1.42 1.42 0 0 0 12 2.69a1.57 1.57 0 0 0-1.86-1.53Z' style='animation:spinner .75s infinite linear' transform-origin='center'/%3e%3c/svg%3e");
  58. }
  59. :is(.toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress--throbber), .toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress-throbber)) + .ajax-progress--throbber,
  60. :is(.toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress--throbber), .toolbar-button[class*="toolbar-button--icon"]:has(+ .ajax-progress-throbber)) + .ajax-progress-throbber {
  61. display: none;
  62. }
  63. .toolbar-button:hover {
  64. z-index: 20;
  65. color: var(--toolbar-button-hover-color);
  66. outline: 2px solid var(--admin-toolbar-color-blue-200);
  67. outline-offset: var(--toolbar-button-outline-offset);
  68. background-color: var(--toolbar-button-hover-bg);
  69. }
  70. .toolbar-button:focus {
  71. z-index: 10;
  72. color: var(--toolbar-button-focus-color);
  73. outline: 2px solid var(--admin-toolbar-color-focus);
  74. outline-offset: var(--toolbar-button-outline-offset);
  75. }
  76. .toolbar-button.current {
  77. color: var(--toolbar-button-current-color);
  78. background-color: var(--toolbar-button-current-bg);
  79. }
  80. /* Dark color modifier for submenus title */
  81. .toolbar-button--dark {
  82. color: var(--admin-toolbar-color-gray-990);
  83. }
  84. .toolbar-button--large {
  85. padding: var(--admin-toolbar-space-8) var(--admin-toolbar-space-16);
  86. font-size: var(--admin-toolbar-font-size-info-lg);
  87. line-height: var(--admin-toolbar-line-height-info-lg);
  88. }
  89. .toolbar-button--non-interactive:hover,
  90. .toolbar-button--non-interactive:focus,
  91. .toolbar-button--non-interactive:hover:focus {
  92. z-index: 1;
  93. cursor: auto;
  94. color: var(--toolbar-button-color);
  95. outline: 0;
  96. background-color: var(--toolbar-button-bg);
  97. }
  98. .toolbar-button--small-offset {
  99. --toolbar-button-outline-offset: calc(-1 * var(--admin-toolbar-space-4));
  100. }
  101. /* Class starts with `toolbar-button--icon` */
  102. [class*="toolbar-button--icon"] {
  103. padding-inline: var(--admin-toolbar-space-10);
  104. }
  105. [class*="toolbar-button--icon"]:not(:has(.toolbar-button__icon))::before {
  106. flex-shrink: 0;
  107. content: attr(data-icon-text) / "";
  108. text-align: center;
  109. color: currentColor;
  110. font-size: calc(0.75 * var(--admin-toolbar-rem));
  111. inline-size: var(--toolbar-button-icon-size);
  112. }
  113. .toolbar-button--primary {
  114. --toolbar-button-color: var(--admin-toolbar-color-white);
  115. --toolbar-button-bg: var(--admin-toolbar-color-blue-450);
  116. --toolbar-button-hover-color: var(--admin-toolbar-color-white);
  117. --toolbar-button-hover-bg: var(--admin-toolbar-color-blue-600);
  118. --toolbar-button-focus-color: var(--admin-toolbar-color-white);
  119. }
  120. .toolbar-button--weight--400 {
  121. font-variation-settings: "wght" 400;
  122. }
  123. /* Set 0 specificity */
  124. :where(.toolbar-button) {
  125. display: flex;
  126. flex-grow: 1;
  127. }
  128. .toolbar-button--expand--down[aria-expanded="true"]:focus,
  129. .toolbar-button--expand--down[aria-expanded="true"]:hover {
  130. border-bottom-right-radius: 0;
  131. border-bottom-left-radius: 0;
  132. }
  133. [dir="ltr"] .toolbar-button--icon--announcements-feed-announcement .toolbar-button__icon {
  134. scale: -1 1;
  135. }
  136. .toolbar-button--collapsible .toolbar-button__chevron {
  137. display: none;
  138. }
  139. .toolbar-button--collapsible .toolbar-button__label {
  140. position: absolute;
  141. overflow: hidden;
  142. clip: rect(0 0 0 0);
  143. width: 1px;
  144. height: 1px;
  145. white-space: nowrap;
  146. clip-path: inset(50%);
  147. opacity: 0;
  148. }
  149. :is([data-admin-toolbar="expanded"] .toolbar-button--collapsible) .toolbar-button__chevron {
  150. display: block;
  151. }
  152. :is([data-admin-toolbar="expanded"] .toolbar-button--collapsible) .toolbar-button__label {
  153. position: relative;
  154. clip: revert;
  155. width: auto;
  156. height: auto;
  157. white-space: wrap;
  158. clip-path: none;
  159. opacity: 1;
  160. }
  161. :is([data-admin-toolbar-animating] .toolbar-button--collapsible) .toolbar-button__label {
  162. display: none;
  163. }
  164. .toolbar-button__chevron {
  165. flex-shrink: 0;
  166. margin-inline-start: auto;
  167. transition: rotate var(--admin-toolbar-transition);
  168. fill: currentColor;
  169. block-size: var(--admin-toolbar-space-16);
  170. inline-size: var(--admin-toolbar-space-16);
  171. }
  172. :where([dir="rtl"]) .toolbar-button__chevron {
  173. rotate: 180deg;
  174. }
  175. .toolbar-button--expand--down .toolbar-button__chevron {
  176. rotate: 90deg;
  177. }
  178. .toolbar-button--expand--down[aria-expanded="true"] .toolbar-button__chevron {
  179. rotate: -90deg;
  180. }
  181. .toolbar-button__icon {
  182. fill: currentColor;
  183. flex-shrink: 0;
  184. inline-size: var(--toolbar-button-icon-size);
  185. block-size: var(--toolbar-button-icon-size);
  186. }

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.