Files
bulma/sass/components/breadcrumb.scss
2022-12-06 00:47:43 +00:00

138 lines
2.6 KiB
SCSS

@import "../utilities/mixins";
$breadcrumb-item-color: getVar("link") !default;
$breadcrumb-item-hover-color: getVar("link-hover") !default;
$breadcrumb-item-active-color: getVar("text-strong") !default;
$breadcrumb-item-padding-vertical: 0 !default;
$breadcrumb-item-padding-horizontal: 0.75em !default;
$breadcrumb-item-separator-color: getVar("border-hover") !default;
:root {
@include register-vars(
(
breadcrumb-item-color: #{$breadcrumb-item-color},
breadcrumb-item-hover-color: #{$breadcrumb-item-hover-color},
breadcrumb-item-active-color: #{$breadcrumb-item-active-color},
breadcrumb-item-padding-vertical: #{$breadcrumb-item-padding-vertical},
breadcrumb-item-padding-horizontal: #{$breadcrumb-item-padding-horizontal},
breadcrumb-item-separator-color: #{$breadcrumb-item-separator-color},
)
);
}
.#{$class-prefix}breadcrumb {
@extend %block;
@extend %unselectable;
font-size: getVar("size-normal");
white-space: nowrap;
a {
align-items: center;
color: getVar("breadcrumb-item-color");
display: flex;
justify-content: center;
padding: getVar("breadcrumb-item-padding-vertical")
getVar("breadcrumb-item-padding-horizontal");
&:hover {
color: getVar("breadcrumb-item-hover-color");
}
}
li {
align-items: center;
display: flex;
&:first-child a {
@include ltr-property("padding", 0, false);
}
&.is-active {
a {
color: getVar("breadcrumb-item-active-color");
cursor: default;
pointer-events: none;
}
}
& + li::before {
color: getVar("breadcrumb-item-separator-color");
content: "/";
}
}
ul,
ol {
align-items: flex-start;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
.#{$class-prefix}icon {
&:first-child {
@include ltr-property("margin", 0.5em);
}
&:last-child {
@include ltr-property("margin", 0.5em, false);
}
}
// Alignment
&.is-centered {
ol,
ul {
justify-content: center;
}
}
&.is-right {
ol,
ul {
justify-content: flex-end;
}
}
// Sizes
&.is-small {
font-size: getVar("size-small");
}
&.is-medium {
font-size: getVar("size-medium");
}
&.is-large {
font-size: getVar("size-large");
}
// Styles
&.has-arrow-separator {
li + li::before {
content: "";
}
}
&.has-bullet-separator {
li + li::before {
content: "";
}
}
&.has-dot-separator {
li + li::before {
content: "·";
}
}
&.has-succeeds-separator {
li + li::before {
content: "";
}
}
}