почему тень окна исчезает для div, когда я удаляю относительное положение для div?

#css

#css

Вопрос:

у меня есть top_div, который при установке в относительное положение сохраняет тень окна. и когда я удаляю относительную позицию, тень окна исчезает. может кто-нибудь помочь мне понять это или где я ошибаюсь.

Ниже приведен код,

 <div class="top_div">
    <div class="drawer">
        <div class="menu">
            <header>
                <Svg>
                <button></button>
            </header>
            <ul>
                <li></li>
            </ul></div></div></div>


.top_div {
    z-index: 1;
    display: flex;
    position: relative;
    width: 100%;
    height: 48px;
    padding: 0 12px 0 12px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
    align-items: center;
 }
.drawer {
    display: flex;
    flex-direction: column;
    background-color: $white;
    position: absolute;
    width: 380px;
    top: 55px;
    right: 8px;
    min-height: 40%;
    max-height: 80%;

    header {
        height: 41px;
        border-bottom: 1px solid #CCCCCC;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-right: 0px;
        padding-top: 2px;

        svg {
            margin-left: 16px; 
        }
    }

    ul {
       overflow-x: hidden;
    }}} 
  

Комментарии:

1. Я не смог воспроизвести вашу проблему, возможно, у вашего браузера возникли трудности с отображением вашего HTML. В вашем <header> есть свободный тег SVG, который абсолютно ничего не делает открытым, что может быть причиной проблемы. Кроме того, вложение внутри правил CSS невозможно. Например, header { svg { margin-left: 16px; } } невозможно. Основываясь на вашем текущем коде, вы определенно продвигаетесь слишком быстро. Попробуйте начать с основ, поставьте цель. Возьмите дизайн из Интернета или создайте его самостоятельно и попробуйте воспроизвести это в коде.

2. если вы можете создать jsffidle или пример wroking или добавить полный код, чтобы мы могли его протестировать