@rolemodel/optics
Version:
Optics is a css package that provides base styles and components that can be integrated and customized in a variety of projects.
57 lines (48 loc) • 1.73 kB
CSS
.divider {
/* Public API (customizable component options) */
--_op-divider-vertical-min-height: var(--op-space-large);
--_op-divider-height-small: var(--op-border-width);
--_op-divider-height-medium: var(--op-border-width-large);
--_op-divider-height-large: var(--op-border-width-x-large);
--_op-divider-padding-small: var(--op-space-2x-small);
--_op-divider-padding-medium: var(--op-space-x-small);
--_op-divider-padding-large: var(--op-space-medium);
/* Private API (component option defaults) */
--__op-divider-height: var(--_op-divider-height-small);
--__op-divider-padding: 0;
background-color: var(--op-color-border);
block-size: var(--__op-divider-height);
inline-size: 100%;
margin-block: var(--__op-divider-padding);
margin-inline: 0;
min-block-size: var(--__op-divider-height);
/* Size Modifiers */
&.divider--small {
--__op-divider-height: var(--_op-divider-height-small);
}
&.divider--medium {
--__op-divider-height: var(--_op-divider-height-medium);
}
&.divider--large {
--__op-divider-height: var(--_op-divider-height-large);
}
/* Spacing Modifiers */
&.divider--spacing-small {
--__op-divider-padding: var(--_op-divider-padding-small);
}
&.divider--spacing-medium {
--__op-divider-padding: var(--_op-divider-padding-medium);
}
&.divider--spacing-large {
--__op-divider-padding: var(--_op-divider-padding-large);
}
/* Direction Modifier */
&.divider--vertical {
block-size: 100%;
inline-size: var(--__op-divider-height);
margin-block: 0;
margin-inline: var(--__op-divider-padding);
min-block-size: var(--_op-divider-vertical-min-height);
min-inline-size: var(--__op-divider-height);
}
}