Как можно улучшить этот SCSS код, оператор & после класс?

Код который есть. А ниже будет пример как бы я хотел сделать, чтобы не дублировать код.
.main{
           .active~.search-results-live {
                visibility: visible;
            }

            .search-results-live {
                position: absolute;
                left: 0;
                right: 0;
                top: 100%;
                max-height: 600px;
                overflow-y: auto;
                margin: 0;
                font-size: 16px;
                line-height: 34px;
                text-align: left;
                z-index: 998;
                opacity: 0;
                visibility: hidden;

                & #search-results {
                    padding: 16px 12px 12px;
                    border: 1px solid #ececee;
                    border-radius: 0 0 3px 3px;
                    color: #888;
                    background: #fff;
                }
            }
            }

Так бы хотелось и кажется верным. Но не работает.
.main{

            .search-results-live {
                position: absolute;
                left: 0;
                right: 0;
                top: 100%;
                max-height: 600px;
                overflow-y: auto;
                margin: 0;
                font-size: 16px;
                line-height: 34px;
                text-align: left;
                z-index: 998;
                opacity: 0;
                visibility: hidden;

               .active~& {
                         visibility: visible;
               }

                & #search-results {
                    padding: 16px 12px 12px;
                    border: 1px solid #ececee;
                    border-radius: 0 0 3px 3px;
                    color: #888;
                    background: #fff;
                }
            }
            }
  • Вопрос задан
  • 79 просмотров
Пригласить эксперта
Ответы на вопрос 1
sergski
@sergski
web-developer
Не работает, потому что результат такой записи .active~& будет
.active ~ .main .search-results-live{visibility:visible}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы