Я называю div.settings
«родителем», а #mainMenu
- «потомком».
Теперь я хочу создать выпадающий список, аналогичный выпадающему в Windows.Таким образом, высота родительского элемента должна быть фиксированной (как это было изначально).Кроме того, я хочу, чтобы мой ребенок был в состоянии fixed
, чтобы иметь возможность создавать эффект ниже (я сам создам эффект позже).
Это то, что я сделал до сих пор.
* {
box-sizing: border-box;
cursor: default;
user-select: none;
font-family: Roboto;
font-weight: 400;
}
.settings {
padding: 7px 16px;
border: 0.5px solid #7777;
border-radius: 4px;
}
#mainMenu {
position: fixed;
/* or absolute */
display: inline-flex;
flex-flow: column wrap;
justify-content: flex-start;
align-items: stretch;
}
span.opt {
padding: 5px 20px;
flex-grow: 1;
margin: 0;
background: #777;
color: #FFF;
text-align: center;
display: none;
}
span.selected {
display: inline-block !important;
background: #28F;
}
#mainMenu:hover>span.opt {
display: inline-block;
}
<div class='settings'>
<p>Select default browser</p>
<span id='mainMenu'>
<span class='opt'>Google Chrome</span>
<span class='opt'>Mozilla Firefox</span>
<span class='opt'>Safari</span>
<span class='opt selected'>Microsoft Edge</span>
<span class='opt'>Opera</span>
<span class='opt'>Internet Explorer</span>
</span>
</div>
Задача
Фиксированный дочерний элемент переполнен из тела своего родителя.
Я хочу, чтобы родительский элемент включил меню в его содержимое.Примерно так, как показано на рисунке ниже:
Красная линия (приблизительно) указывает, где должна быть граница родителя.
Примечание : только CSS (потому что без эффекта нет ничего динамического), и я отобразил только одно из меню в моем коде (чтобы минимизировать сложность и длину кода).В действительности, может быть много .
Короче говоря, я просто хочу, чтобы ребенок оставался в фиксированном положении и находился внутри тела родителя с фиксированной высотой.Спасибо за вашу помощь.