nav-secondary.css

Secondary navigation styling.

File

core/themes/olivero/css/components/navigation/nav-secondary.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. /**
  8. * @file
  9. * Secondary navigation styling.
  10. */
  11. .secondary-nav {
  12. letter-spacing: 0.02em;
  13. font-size: var(--font-size-s);
  14. font-weight: 600;
  15. }
  16. .secondary-nav__menu {
  17. display: flex;
  18. align-items: center;
  19. margin-block: 0;
  20. margin-inline-start: 0;
  21. margin-inline-end: 0;
  22. padding-block: 0;
  23. padding-inline-start: 0;
  24. padding-inline-end: 0;
  25. list-style: none;
  26. }
  27. .secondary-nav__menu-item {
  28. /* Parent element is set to flex-basis: 0. We
  29. * don't want text to wrap unless it goes over a
  30. * certain arbitrary width.
  31. */
  32. /* @todo should this be scoped to desktop nav? */
  33. width: max-content;
  34. max-width: 12.5rem;
  35. }
  36. .secondary-nav__menu-item:not(:last-child) {
  37. margin-inline-end: var(--sp1-5);
  38. }
  39. .secondary-nav__menu-link {
  40. position: relative;
  41. display: inline-flex;
  42. align-items: center;
  43. -webkit-text-decoration: none;
  44. text-decoration: none;
  45. color: inherit;
  46. }
  47. .secondary-nav__menu-link::after {
  48. position: absolute;
  49. bottom: 0;
  50. left: 0;
  51. width: 100%;
  52. height: 0;
  53. content: "";
  54. transition:
  55. opacity 0.2s,
  56. transform 0.2s;
  57. transform: translateY(0.3125rem);
  58. opacity: 0;
  59. /* Intentionally not using CSS logical properties. */
  60. border-top: solid 2px currentColor;
  61. }
  62. .secondary-nav__menu-link:hover::after {
  63. transform: translateY(0);
  64. opacity: 0.8;
  65. }
  66. @media (min-width: 75rem) {
  67. body:not(.is-always-mobile-nav) .secondary-nav {
  68. position: relative;
  69. display: flex;
  70. margin-inline-start: var(--sp);
  71. padding-inline-start: var(--sp2);
  72. }
  73. :is(body:not(.is-always-mobile-nav) .secondary-nav)::before {
  74. position: absolute;
  75. inset-block-start: 50%;
  76. inset-inline-start: 0;
  77. width: 2px;
  78. height: var(--sp2);
  79. content: "";
  80. transform: translateY(-50%);
  81. background-color: var(--color--gray-90);
  82. }
  83. body:not(.is-always-mobile-nav) .secondary-nav__menu-item:not(:last-child) {
  84. margin-inline-end: var(--sp2);
  85. }
  86. :is(body:not(.is-always-mobile-nav) .secondary-nav__menu-link):focus {
  87. position: relative;
  88. outline: 0;
  89. padding-block: var(--sp0-5);
  90. }
  91. :is(body:not(.is-always-mobile-nav) .secondary-nav__menu-link):focus::before {
  92. position: absolute;
  93. top: 50%;
  94. left: 50%;
  95. width: calc(100% + var(--sp));
  96. height: 100%;
  97. content: "";
  98. transform: translate(-50%, -50%);
  99. border: solid 2px var(--color--primary-50);
  100. border-radius: 0.25rem;
  101. }
  102. }

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