Я столкнулся с проблемой выравнивания, а высота расширяется.
Сценарий: у меня есть тег div, где мне нужно применить прокрутку, если высота div будет больше фиксированной высоты. Для фиксированной прокрутки по высоте это не применимо.
Пожалуйста, помогите по этому поводу.
#configurator .content .white-box {
background-color: white;
border: 1px solid #cecece;
/*overflow:scroll;*/
}
#configurator .content .white-box-accessory {
background-color: white;
border: 1px solid #cecece;
height: 50px;
overflow: scroll;
}
#configurator .content .white-box-services {
background-color: white;
border: 1px solid #cecece;
height: 50px;
overflow: scroll;
}
<div class="white-box">
<div>
<p>Accasory Header
</p>
</div>
<div class="white-box-accessory">
<p>
Accesory 1
<br>Accesory 2
<br>Accesory 3
<br>Accesory 4
<br>Accesory 5
<br>Accesory 6
<br>Accesory 7
<br>Accesory 8
</p>
</div>
<div>
<p>Services Header
</p>
</div>
<div class="white-box-services">
<p>
Services 1
<br>Services 2
<br>Services 3
<br>Services 4
<br>Services 5
<br>Services 6
<br>Services 7
<br>Services 8
</p>
</div>
</div>
Дайте max-height в css для div и переполнения: auto, чтобы свиток был применен после достижения этой высоты,
#configurator .content .white-box {
background-color: white;
border: 1px solid #cecece;
/*overflow:scroll;*/
}
.white-box-accessory {
background-color: white;
border: 1px solid #cecece;
max-height:100px;
overflow:auto;
}
.white-box-services {
background-color: white;
border: 1px solid #cecece;
max-height:100px;
overflow:auto;
}
<div class="white-box">
<div>
<p>Accasory Header
</p>
</div>
<div class="white-box-accessory">
<p>
Accesory 1<br>
Accesory 2<br>
Accesory 3<br>
Accesory 4<br>
Accesory 5<br>
Accesory 6<br>
Accesory 7<br>
Accesory 8
</p>
</div>
<div>
<p>Services Header
</p>
</div>
<div class="white-box-services">
<p>
Services 1<br>
Services 2<br>
Services 3<br>
Services 4<br>
Services 5<br>
Services 6<br>
Services 7<br>
Services 8
</p>
</div>
</div>
Сначала добавьте класс CSS ко всем div, для которых вы хотите настроить таргетинг. Я использовал scroll
. Затем добавьте max-height
для установки фиксированной высоты, затем добавьте overflow-y: auto
чтобы добавить прокрутку, когда содержимое больше, чем max-height
.
В приведенном ниже фрагменте я удалил некоторые из услуг из вашего кода, чтобы продемонстрировать эффект.
.scroll {
max-height: 300px;
overflow-y: auto;
height: 50vh;
}
<div class="white-box">
<div>
<p>Accasory Header
</p>
</div>
<div class="white-box-accessory scroll">
<p>
Accesory 1
<br>Accesory 2
<br>Accesory 3
<br>Accesory 4
<br>Accesory 5
<br>Accesory 6
<br>Accesory 7
<br>Accesory 8
</p>
</div>
<div>
<p>Services Header
</p>
</div>
<div class="white-box-services scroll">
<p>
Services 1
<br>Services 2
<br>Services 3
<br>Services 4
</p>
</div>
</div>
Вот пример
html,
body {
height: 100%;
}
#wrapper {
height: 100%;
display: table;
width: 700px;
}
#header {
display: table-row;
height: 30px;
}
#right-col {
display: inline-block;
width: 320px;
height: 100%;
max-height: 100%;
margin-right: 20px;
border: 2px black solid;
vertical-align: top;
overflow: hidden;
}
#inner-right {
height: 300px;
max-height: 300px;
overflow-y: scroll;
background: ivory;
}
<div id="wrapper">
<div id="header">Header</div>
<div id="body">
<div id="right-col">
<div id="header-text">Header</div>
<div id="inner-right">
<p>
Accesory 1
<br>Accesory 2
<br>Accesory 3
<br>Accesory 4
<br>Accesory 5
<br>Accesory 6
<br>Accesory 7
<br>Accesory 8 Accesory 1
<br>Accesory 2
<br>Accesory 3
<br>Accesory 4
<br>Accesory 5
<br>Accesory 6
<br>Accesory 7
<br>Accesory 8 Accesory 5
<br>Accesory 6
<br>Accesory 7
<br>Accesory 8
</p>
</div>
</div>
</div>
</div>