ajax-progress.module.pcss.css

Same filename in this branch
  1. 10 core/themes/claro/css/components/ajax-progress.module.pcss.css
Same filename in other branches
  1. 9 core/themes/olivero/css/components/ajax-progress.module.pcss.css
  2. 9 core/themes/claro/css/components/ajax-progress.module.pcss.css
  3. 8.9.x core/themes/claro/css/components/ajax-progress.module.pcss.css
  4. 11.x core/themes/olivero/css/components/ajax-progress.module.pcss.css
  5. 11.x core/themes/claro/css/components/ajax-progress.module.pcss.css

Visual styles for ajax-progress throbber.

File

core/themes/olivero/css/components/ajax-progress.module.pcss.css

View source
  1. /**
  2. * @file
  3. * Visual styles for ajax-progress throbber.
  4. */
  5. @import "../base/media-queries.pcss.css";
  6. .ajax-progress {
  7. display: inline-block;
  8. }
  9. /**
  10. * Throbber.
  11. */
  12. .ajax-progress-throbber {
  13. position: relative;
  14. display: inline-flex;
  15. align-content: center;
  16. height: 1.125rem;
  17. margin-block-start: -3px;
  18. margin-block-end: 0;
  19. margin-inline-start: var(--sp0-5);
  20. margin-inline-end: var(--sp0-5);
  21. vertical-align: middle;
  22. white-space: nowrap;
  23. line-height: 1.125rem;
  24. }
  25. .ajax-progress-throbber .throbber {
  26. width: 1.125rem;
  27. height: 1.125rem;
  28. border-width: 2px;
  29. border-color: var(--color--primary-50) transparent var(--color--primary-50) var(--color--primary-50);
  30. }
  31. .ajax-progress-throbber .message {
  32. display: inline-block;
  33. padding-inline-start: var(--sp0-5);
  34. font-size: var(--font-size-s);
  35. font-weight: 400;
  36. }
  37. /**
  38. * Full screen throbber.
  39. */
  40. .ajax-progress-fullscreen {
  41. position: fixed;
  42. z-index: 1000;
  43. inset-block-start: 50%;
  44. inset-inline-start: 50%;
  45. width: 3.5rem;
  46. height: 3.5rem;
  47. margin: -1.75rem;
  48. border: 1px solid var(--color--gray-70);
  49. border-radius: 3.5rem;
  50. background-color: var(--color--white);
  51. box-shadow: 0 0.25rem 0.625rem rgba(34, 35, 48, 0.1); /* LTR */
  52. &::before {
  53. position: absolute;
  54. inset-block-start: 50%;
  55. inset-inline-start: 50%;
  56. width: 1.75rem;
  57. height: 1.75rem;
  58. margin: -0.875rem;
  59. content: "";
  60. border-width: 3px;
  61. }
  62. }
  63. [dir="rtl"] .ajax-progress-fullscreen {
  64. box-shadow: 0 -0.25rem 0.625rem rgba(34, 35, 48, 0.1);
  65. }
  66. /**
  67. * Common styles for all kinds of throbbers.
  68. */
  69. .ajax-progress-throbber .throbber,
  70. .ajax-progress-fullscreen::before {
  71. animation: olivero-throbber 0.75s linear infinite;
  72. border-style: solid dotted solid solid;
  73. border-color: var(--color--primary-50) transparent var(--color--primary-50) var(--color--primary-50);
  74. border-radius: 50%;
  75. }
  76. /**
  77. * Remove margin from ajax throbbers following buttons because buttons already
  78. * have a large margin set.
  79. */
  80. html.js .button:not(.js-hide) + .ajax-progress-throbber {
  81. margin-inline-start: 0;
  82. }
  83. @keyframes olivero-throbber {
  84. 0% {
  85. transform: rotateZ(0);
  86. }
  87. 100% {
  88. transform: rotateZ(360deg);
  89. }
  90. }

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