Вам нужно добавить свойство vertical-align
к вашим двум дочерним div.
Если .small
всегда короче, вам нужно применить свойство только к .small
. Однако, если любой из них может быть самым высоким, вы должны применить свойство как к .small
, так и к .big
.
.container{
border: 1px black solid;
width: 320px;
height: 120px;
}
.small{
display: inline-block;
width: 40%;
height: 30%;
border: 1px black solid;
background: aliceblue;
vertical-align: top;
}
.big {
display: inline-block;
border: 1px black solid;
width: 40%;
height: 50%;
background: beige;
vertical-align: top;
}
Вертикальный выравнивание влияет на ядро встроенного или табличного ящика, и есть большой нумер различные значения для этого свойства. Подробнее см. В https://developer.mozilla.org/en-US/docs/Web/CSS/vertical-align .
Если это все на одном листе (как подсказывает код), то ваша последняя проблема - ваша проблема. Вы должны пересчитывать его каждый раз, когда вставляете новую строку.
Sub Transfer()
Application.ScreenUpdating = False
Dim lastrow As Long, lngRows
Dim wsSource As Worksheet
Dim wsDest As Worksheet
Dim rowCount As Long
Set wsSource = Worksheets("Forecasted Movement")
With wsSource
rowCount = .Cells(.Rows.Count, "A").End(xlUp).Row ' <-- modifed this line
On Error Resume Next
For i = 2 To rowCount
If .Cells(i, "BU").Value > 0 Then
lngRows = .Cells(i, "BU").Value
Range(Cells(i, 1), Cells(i, 72)).specialcells(xlCellTypeVisible).Copy
lastrow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1 ' recalculate this for the next blank row
wsSource.Cells(lastrow, 1).Resize(lngRows).PasteSpecial Paste:=xlPasteValues
End If
Next i
End With
Application.ScreenUpdating = True
End Sub