2017-09-28 143 views
-1

我有一組5 div s,全部使用自動寬度。根據最大div設置div寬度

文本將被動態插入到每個格,我想所有div小號寬度變爲最大的5

任何想法?

.box { 
 
    display: inline-block; 
 
    border: 1px solid #eaeaea; 
 
}
<div class="box">Hi</div> 
 
<div class="box">Hi John</div> 
 
<div class="box">Hello John</div> 
 
<div class="box">Hello John Doe</div>

我想我應該使用JS,但我不知道是否有可能避免。

+0

想象的那樣,它們會改變。否則,請向我們提供您編寫的一些代碼,以便我們可以看到並理解而不是想象。 –

+1

請使用您已經嘗試過的代碼包含一個[最小,完整和可驗證示例](https://stackoverflow.com/help/mcve)。這不是一個編碼或輔導服務。問題應該顯示**研究的證據並嘗試自己解決問題**,清楚地列出您的具體編碼相關問題以及相關代碼。請參閱:[我如何問一個好問題](https://stackoverflow.com/help/how-to-ask)。 – FluffyKitten

+0

...可能是https://stackoverflow.com/questions/42656183/how-to-set-flex-items-to-equal-width-according-to-the-item-with-the-longest- cont/42659167除非你想堆疊它們... –

回答

0

我會使用JavaScript:

function setWidth(e,w) { 
    e.setAttribute("style","width:"+ w +"px"); 
    e.style.width= w +'px'; 
} 
var boxes = document.getElementsByClassName("box"); 
var max = 0; 
for (var i = 0; i < boxes.length; i++) { 
    var width = boxes[i].clientWidth; 
    if (width > max) max = width; 
} 
for (var i = 0; i < boxes.length; i++) { 
    setWidth(boxes[i],max); 
}