含量成長我已經作出了申報單的一個簡單的表結構:「內聯-FLEX」項目不符合其在Internet Explorer中
$(document).ready(function() {
$("button").on("click", function() {
$(".cell").outerWidth(500);
})
})
div {
border: 1px solid black;
box-sizing: border-box;
}
.container {
width: 400px;
height: 100%;
padding: 5px;
overflow: auto;
}
.row {
min-width: 100%;
width: auto;
display: inline-flex;
padding: 5px;
margin-bottom: 5px;
border-color: red;
}
.cell {
flex: 0 0 auto;
border-right: 1px solid black;
overflow: hidden;
min-width: 200px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<div class="row">
<div class="cell">x</div>
</div>
<div class="row">
<div class="cell">x</div>
</div>
<div class="row">
<div class="cell">x</div>
</div>
</div>
<button type="button">Change width</button>
該行需要垂直疊放,每個都有其內容的(未知)高度,並且至少與容器一樣寬。如果內容不合適,容器必須滾動。單元格的寬度將使用JS以交互方式更改,並且行應擴展以適合整個內容。爲此,該行具有以下樣式:
.row {
min-width: 100%;
width: auto;
display: inline-flex;
}
需要的細胞flex
一部分,是這個問題的範圍之外。作爲inline
元素,該行將隨所有主要瀏覽器中的內容一起增長,但不會在Internet Explorer 11中增長。檢出the fiddle並單擊按鈕以更改單元格的寬度。邊界有助於形象化行爲。下圖顯示了預期的行爲(上)和Internet Explorer如何解釋它(底部):
什麼樣的錯誤是這(無法從the list of flexbugs看着辦吧),我怎樣才能使它在Internet Explorer中工作?
是使用Flex絕對的問題? –
我寧願使用CSS解決方案。在這個例子中,jQuery僅僅是因爲我也在嘗試其他一些東西。我總是可以計算'cell's的總寬度,然後更新父'row',但我只會用它作爲最後的手段。這就是爲什麼在問題上沒有[tag:javascript]標籤的原因之一。 –
@AndreiV我不明白的是,這裏沒有正確.. https://yadi.sk/d/G2jtJsCC3EuWeb – grinmax