Я пытаюсь создать компонент, в котором вы можете изменить пропорции ширины двух блоков, перемещая ползунок влево и вправо:
codpen и демо:
.outer {
display: flex;
flex-direction: row;
}
.block {
height: 200px;
width: -webkit-calc(50% - 5px);
width: -moz-calc(50% - 5px);
width: calc(50% - 5px);
}
.block-1 {
background-color: red;
}
.block-2 {
background-color: green;
}
.slider {
line-height: 100%;
width: 10px;
background-color: #dee2e6;
border: none;
cursor: e-resize;
}
<div id="app">
<div class="outer">
<div class="block block-1">
Block 1
</div>
<div class="slider">
S<br>l<br>i<br>d<br>e<br>r
</div>
<div class="block block-2">
Block 2
</div>
</div>
</div>
Я попытался использовать draggable-vue-directive
и изменить ширину блоков в зависимости от положения ползунка.
Однако,это не сработало очень хорошо, так как draggable-vue-directive
установил ползунок на position:fixed
, что, в свою очередь, испортило выравнивание блока.
Как сделать блок .slider
горизонтально перетаскиваемым без установки position:fixed
?
Как правильно изменить размер Block1
и Block2
при перемещении ползунка?
Примечание: я не использую jQuery