You can use inverse the order of elements in HTML. Then besides using order
as in Michael_B's answer you can use flex-direction: row-reverse;
or flex-direction: column-reverse;
depending on your layout.
Working sample:
.flex {_x000D_
display: flex;_x000D_
flex-direction: row-reverse;_x000D_
/* Align content at the "reversed" end i.e. beginning */_x000D_
justify-content: flex-end;_x000D_
}_x000D_
_x000D_
/* On hover target its "previous" elements */_x000D_
.flex-item:hover ~ .flex-item {_x000D_
background-color: lime;_x000D_
}_x000D_
_x000D_
/* styles just for demo */_x000D_
.flex-item {_x000D_
background-color: orange;_x000D_
color: white;_x000D_
padding: 20px;_x000D_
font-size: 3rem;_x000D_
border-radius: 50%;_x000D_
}
_x000D_
<div class="flex">_x000D_
<div class="flex-item">5</div>_x000D_
<div class="flex-item">4</div>_x000D_
<div class="flex-item">3</div>_x000D_
<div class="flex-item">2</div>_x000D_
<div class="flex-item">1</div>_x000D_
</div>
_x000D_