html - верстка кнопки
Доброй ночи, Господа. Возникла проблема с версткой кнопочки, которая должна быть оформлена как ссылка. Собственно после оборачивания контента ссылкой, все прыгнуло вверх и сломалось. Так же слышал про правило, что нельзя блок в ссылку заворачивать, но у меня почти весь контент из блоков. Прошу помощи!
.buttons {
box-shadow: 8px 14px 24px 0px #0a0e34;
width: 312px;
height: 70px;
background-color: #5e42b0;
border-radius: 32.0px;
padding-left: 42px;
display: flex;
align-items: center;
}
.buttons__wrapper {
display: flex;
justify-content: space-between;
align-items: center;
width: 210px;
height: 40px;
}
.button {
background-image: url(../images/apple.png);
background-repeat: no-repeat;
background-size: cover;
background-position: center;
width: 33px;
height: 37px;
}
.buttons__inner {
display: flex;
flex-direction: column;
}
.buttons__text {
font-size: 14px;
line-height: 16px;
font-weight: 200;
letter-spacing: 0.05em;
color: #ffffff;
text-transform: uppercase;
opacity: 0.7;
}
.buttons__subtext {
font-size: 14px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
color: #ffffff;
}
.buttons__link {
display: block;
height: 100%;
}
<div class="buttons">
<a href="#" class="buttons__link">
<div class="buttons__wrapper">
<div class="buttons__icon button"></div>
<div class="buttons__inner">
<p class="buttons__text">download on the</p>
<p class="buttons__subtext">app store</p>
</div>
</div>
</a>
</div>
Ответы (2 шт):
Нет никакого смысла в том что бы назначать ссылке блочный дисплей и высоту, это и ломает вам верстку, просто уберите весь стиль класса .buttons_link. Так же добавьте в css вот этот фрагмент. Это уберет стандартное подчеркивание ссылки, а так же выставит размеры всех элементов конкретно так как вы задаете их в css.
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
a {
text-decoration: none;
}
А для того что бы ссылка работала на всю площадь кнопки в случае вашей верстки нужно вынести тэг a над тэгом .buttons, таким образом ссылка будет работать на всю площадь.
<a href="#" class="buttons__link">
<div class="buttons">
<div class="buttons__wrapper">
<div class="buttons__icon button"></div>
<div class="buttons__inner">
<p class="buttons__text">download on the</p>
<p class="buttons__subtext">app store</p>
</div>
</div>
</div>
</a>
.buttons {
box-shadow: 8px 14px 24px 0px #0a0e34;
width: 312px;
height: 70px;
background-color: #5e42b0;
border-radius: 32.0px;
padding-left: 42px;
display: flex;
align-items: center;
}
.buttons__wrapper {
display: flex;
justify-content: space-between;
align-items: center;
width: 210px;
height: 40px;
}
.button {
background-image: url(../images/apple.png);
background-repeat: no-repeat;
background-size: cover;
background-position: center;
width: 33px;
height: 37px;
}
.buttons__inner {
display: flex;
flex-direction: column;
}
.buttons__text {
font-size: 14px;
line-height: 16px;
font-weight: 200;
letter-spacing: 0.05em;
color: #ffffff;
text-transform: uppercase;
opacity: 0.7;
}
.buttons__subtext {
font-size: 14px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.05em;
color: #ffffff;
}
.buttons__link {
display: block;
height: 100%;
}
<div>
<a href="#" class="buttons">
<div class="buttons__wrapper">
<div class="buttons__icon button"></div>
<div class="buttons__inner">
<p class="buttons__text">download on the</p>
<p class="buttons__subtext">app store</p>
</div>
</div>
</a>
</div>
