-1
Я создал меню гамбургера в чистом CSS, но проблема в том, что по какой-то причине он центрирован левой, а не средней. Я не понимаю, почему.Меню Burger не сфокусировано должным образом
Markup:
<section id="header">
<a href="#menu" class="box-shadow-menu" id="navTrigger">
<div class="navicon">
</div>
</a>
</section>
CSS:
#header {
width: 100%;
height: 45px;
background-color: #4dc1df;
position: fixed;
z-index: 100;
}
.navicon {
position: fixed;
height: 45px;
left: 50%;
margin-left: -17.5px;
}
.box-shadow-menu {
position: relative;
display: block;
height: 45px;
}
.box-shadow-menu:before {
content: "";
position: absolute;
top: 10px;
width: 35px;
height: 4px;
background: white;
box-shadow: 0 10px 0 0 white, 0 20px 0 0 white;
}
Demo: http://jsfiddle.net/jLhnr12p/1/.
Любая помощь, чтобы центрировать это должным образом была бы оценена!
Это было что-то, что я пытался при попытке исправить это, но я обновил свой код. Я попробую ваше предложение. –
Если '.navicon' будет иметь разные размеры или OP планирует его часто менять, тогда преобразование может быть лучшим вариантом, чем отрицательный margin' transform: translateX (-50%); 'с префиксами поставщика. – shirfy
С обновленным кодом вы можете использовать 'margin-left: -17.5px' и' left: 50% 'для' .box-shadow-menu: before' или вы можете использовать 'left: 50%' и 'transform: translateX (-50%) 'как @shirfy. – makshh