Код: Выделить всё
---
const {
onClick = () => {},
type = "button",
variant = "primary",
size = "md",
class: className = "",
} = Astro.props;
---
.btn {
cursor: pointer;
border-radius: 6px;
transition-property: all;
transition: 0.2s;
box-shadow: 0 1px 3px hsla(0,0%,0%,.2);
width: max-content;
max-width: 100%;
}
.btn:active {
transform: scale(0.95);
}
/* Size variants */
.btn.md {
padding: 12px 16px;
font-size: 16px;
}
.btn.lg {
padding: 15px 30px;
font-size: 20px;
}
/* Color variants */
.btn.primary {
background-color: var(--primary);
color: white;
}
.btn.primary:hover {
background-color: var(--primary-hover);
}
.btn.secondary {
background-color: var(--secondary);
color: white;
}
.btn.secondary:hover {
background-color: #var(--secondary-hover);
}
Код: Выделить всё
example
.test{
background-color: red;
}
расширяет стили повторно используемого компонента кнопки.
Подробнее здесь: https://stackoverflow.com/questions/787 ... lass-props