Tôi gặp sự cố với kịch bản này trong Firefox. #pager có chiều rộng của con của nó. Tuy nhiên, trong Chrome, nó có chiều rộng của cha mẹ của nó. Làm thế nào tôi có thể làm cho # item-list tôn trọng chiều rộng của cha mẹ trong Firefox?Chiều rộng CSS flexbox 100% Firefox
hãy xem! https://jsfiddle.net/owmpatbh/2/
HTML:
<div id="wrapper">
<div id="sidebar"></div>
<div id="main">
<div id="content">
<p id="stuff">blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah</p>
</div>
<div id="pager">
<div id="item-list">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
</div>
</div>
</div>
CSS:
#wrapper {
display: flex;
width: 100%;
height: 100%;
}
#sidebar {
overflow: auto;
flex: 0.25;
border:3px solid green;
min-height: 200px;
}
#main {
display: flex;
flex: .75;
flex-direction: column;
border:3px solid orange;
}
#content {
position: relative;
width: 100%;
flex: 0.85;
border: 3px solid blue;
}
#pager {
display: flex;
position: relative;
width: 100%;
background-color: #fff;
border: 3px solid pink;
flex: 0.15;
}
#item-list {
border: 1px solid black;
width: 100%;
overflow-x: scroll;
overflow-y: hidden;
white-space: nowrap;
}
.item {
display: inline-block;
padding: 5px;
width: 200px;
height: 200px;
background-color: red;
}
#stuff {
height: 200px;
}
*{
margin: 3px;
}
dường như không có chiều rộng 200px cố định vì một số lý do. không chắc chắn lý do tại sao chưa – redbmk
Vì bạn đang sử dụng flex, bạn không cần phải sử dụng 'width: 100%' ở bất kỳ đâu. Lấy nó ra không phá vỡ bất cứ điều gì trong Chrome, cũng không làm bất cứ điều gì tồi tệ hơn trong firefox. Firefox dường như muốn có một chiều rộng cố định cho '# item-list', nhưng một lần nữa, tôi không chắc chắn tại sao. Nó dường như không muốn xử lý các trẻ em inline-block đúng cách (hoặc có thể hành vi chưa được xác định rõ chưa?) – redbmk