divider.scss 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. // Divider
  2. .divider {
  3. display: block;
  4. text-align: center;
  5. overflow: hidden;
  6. white-space: nowrap;
  7. margin: 1rem 0;
  8. // divider text display prop
  9. .divider-text {
  10. position: relative;
  11. display: inline-block;
  12. font-size: 0.9375rem;
  13. padding: 0 1rem;
  14. // divider icon font size
  15. i,
  16. svg {
  17. height: 1rem;
  18. width: 1rem;
  19. font-size: 1rem;
  20. }
  21. // divider border
  22. &:before,
  23. &:after {
  24. content: '';
  25. position: absolute;
  26. top: 50%;
  27. width: 9999px;
  28. border-top: 1px solid $border-color;
  29. }
  30. // divider spacing
  31. &:before {
  32. right: 100%;
  33. }
  34. &:after {
  35. left: 100%;
  36. }
  37. }
  38. // divider positions config
  39. &.divider-left {
  40. .divider-text {
  41. float: left;
  42. padding-left: 0;
  43. &:before {
  44. display: none;
  45. }
  46. }
  47. }
  48. &.divider-left-center {
  49. .divider-text {
  50. left: -25%;
  51. }
  52. }
  53. &.divider-right {
  54. .divider-text {
  55. float: right;
  56. padding-right: 0;
  57. &:after {
  58. display: none;
  59. }
  60. }
  61. }
  62. &.divider-right-center {
  63. .divider-text {
  64. right: -25%;
  65. }
  66. }
  67. // divider styles
  68. &.divider-dotted {
  69. .divider-text {
  70. &:before,
  71. &:after {
  72. border-style: dotted;
  73. border-width: 1px;
  74. border-top-width: 0;
  75. border-color: $border-color;
  76. }
  77. }
  78. }
  79. &.divider-dashed {
  80. .divider-text {
  81. &:before,
  82. &:after {
  83. border-style: dashed;
  84. border-width: 1px;
  85. border-top-width: 0;
  86. border-color: $border-color;
  87. }
  88. }
  89. }
  90. }