Advertisement
attilan

Breadcrumbs

Feb 15th, 2022
810
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 1.98 KB | None | 0 0
  1. <div class="categories-container">
  2.   <div class="main-category">
  3.     Main category
  4.   </div>
  5.  
  6.   <div class="sub-category">
  7.     Sub category 1 Sub category 1
  8.   </div>
  9.  
  10.   <div class="sub-category">
  11.     Sub category 2
  12.   </div>
  13.  
  14.   <div class="sub-category">
  15.     Sub category 2
  16.   </div>
  17.  
  18.   <div class="sub-category">
  19.     Sub category 2
  20.   </div>
  21.  
  22.   <div class="sub-category">
  23.     Sub category 2
  24.   </div>
  25.  
  26.   <div class="sub-category">
  27.     Sub category 2
  28.   </div>
  29.  
  30.   <div class="sub-category">
  31.     Sub category 2
  32.   </div>
  33. </div>
  34.  
  35. -------------
  36.  
  37. :root {
  38.   --bg-color: #f7f7fa;
  39.   --main-category-color: #4b4b4b;
  40.   --sub-category-color: #7a7a7a;
  41.   --item-gap: 3px;
  42.   --skew-position-offset: 24px;
  43.   --main-category-divider: calc(var(--item-gap) + 2px);
  44. }
  45.  
  46. @mixin breadcrumb-base {
  47.   position: relative;
  48.   padding: 10px 15px;
  49.   font-size: 20px;
  50.   position: relative;
  51.   background: var(--bg-color);
  52.   border-radius: 5px;
  53.   margin-right: var(--item-gap);
  54.   font-weight: 500;
  55.   font-size: 14px;
  56.   line-height: 16px;
  57.   color: var(--main-category-color);
  58. }
  59.  
  60. @mixin breadcrumb-skew {
  61.   position: absolute;
  62.   display: block;
  63.   width: 100%;
  64.   height: 100%;
  65.   top: 0;
  66.   left: 0;
  67.   z-index: -1;
  68.   background: var(--bg-color);
  69.   transform-origin: bottom left;
  70.   transform: skew(-30deg, 0deg);
  71.   border-radius: 5px;
  72. }
  73.  
  74. .categories-container {
  75.   display: flex;
  76.   flex-wrap: wrap;
  77.   gap: var(--item-gap) 0;
  78.  
  79.   .main-category {
  80.     @include breadcrumb-base;
  81.  
  82.     margin-right: calc(
  83.       var(--skew-position-offset) + var(--main-category-divider)
  84.     );
  85.  
  86.     &::after {
  87.      content: "";
  88.       @include breadcrumb-skew;
  89.     }
  90.   }
  91.  
  92.   .sub-category {
  93.     @include breadcrumb-base;
  94.  
  95.     color: var(--sub-category-color);
  96.  
  97.     &:nth-of-type(1) {
  98.      margin-right: 30px;
  99.     }
  100.  
  101.     &:nth-of-type(2) {
  102.      &::before {
  103.        content: "";
  104.  
  105.         @include breadcrumb-skew;
  106.         left: calc(-1 * var(--skew-position-offset));
  107.       }
  108.     }
  109.   }
  110. }
  111.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement