January 17, 2022
Баннер с кнопкой
Итог кода выглядит примерно вот так:
Назначение блока: вы меняете в html-части ссылку на картинку по инcтрукции либо с помощью копирования url-адреса стандартного блока "баннер", меняете значения подписанных переменных и получаете блок кнопки с вашим цветом/закруглением/размером и своей фоновой картиночкой.
<div class="bnnr-blck">
<img src="https://cc26299.tmweb.ru/files/qLZ6-8oBKY4.jpg">
<a class="bnnr-link" href="#">Действие</a>
</div>
<style>
:root {
/* Ориентирование фона по горизонтали, right, center или left */
--horizontal: center;
/* Ориентирование фона по вертикали, top, bottom или center */
--vertical: center;
/* Высота фона. Если сделать 0, то высота блока будет равна высоте кнопки + отступам по верткали */
--strict-height: 300px;
/* Отступ от верхнего края кнопки до верха текста кнопки */
--pad-top: 10px;
/* Отступ от правого края кнопки до правого края текста кнопки */
--pad-right: 20px;
/* Отступ от нижнего края кнопки до низа текста кнопки */
--pad-bottom: 10px;
/* Отступ от левого края кнопки до левого края текста кнопки */
--pad-left: 20px;
/* Прикрепить кнопку к центру, низу или верху. Для центра "center", для низа "flex-end", для верха "flex-start" */
--btn-align: center;
/* Расстояние от верха кнопки до верха фона. По умолчанию 0 */
--do-verha: auto;
/* Расстояние от низа кнопки до низа фона. По умолчанию 0 */
--do-niza: auto;
/* Ширина обводки кнопки */
--btn-border-width: 1px;
/* Цвет обводки кнопки */
--btn-border-color: rgba(0,0,0,0.0);
/* Цвет фона кнопки */
--btn-fon: black;
/* Закругление кнопки */
--zakruglenie: 16px;
/* Смещение тени по горизонтали */
--shadow-x: -0px;
/* Смещение тени по вертикали */
--shadow-y: -0px;
/* Ширина тени */
--shadow-spread: 10px;
/* Цвет тени */
--shadow-clr: rgba(255,255,255,0.6);
/* Ширина текста кнопки */
--btn-color: darkgreen;
/* Размер текста кнопки */
--btn-text-size: 26px;
}
.bnnr-blck {
min-height: var(--strict-height);
display: grid;
position: relative;
}
.bnnr-blck img {
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
object-position: var(--horizontal) var(--vertical);
z-index: 1;
}
.bnnr-link {
display: flex;
align-items: center;
justify-content: center;
z-index: 2;
position: relative;
padding: var(--pad-top) var(--pad-right) var(--pad-bottom) var(--pad-left);
box-sizing: border-box;
height: max-content;
align-items: var(--btn-align);
margin-top: var(--do-verha);
margin-bottom: var(--do-niza);
border: var(--btn-border-width) solid var(--btn-border-color);
background: var(--btn-fon);
width: max-content;
margin-right: auto;
margin-left: auto;
border-radius: var(--zakruglenie);
filter: drop-shadow(var(--shadow-x) var(--shadow-y) var(--shadow-spread) var(--shadow-clr));
color: var(--btn-color) !important;
font-size: var(--btn-text-size) !important;
}
</style>