<div class="flex-container">
    <div class="item order-0">order: 0</div>
    <div class="item order-1">order: 1</div>
    <div class="item order-1">order: 1</div>
    <div class="item change-order">순서 바꾸기</div>
</div>
.flex-container {
    display: flex; /* 플렉스 컨테이너 생성 */
    border: 2px dashed gray;
    flex-direction: row; /* 플렉스 컨테이너의 흐름 방향(배치 순서)이 왼쪽 → 오른쪽 */
}
.item { /* 플렉스 아이템 */
     border: 4px solid blue;
     transition: order 1s; /* 애니메이션이 가능 */
}
.order-0, .order-1, .order-2 {
    background-color: silver;
}
.order-0 { order: 0;} .order-1 { order: 1; } .order-2 { order: 2; }
.change-order {
    background-color: yellow;
    order: /* value <= 라이브 데모에서 동적으로 구현 */
}
CSS 데모: flexbox의 order 데모 버튼을 클릭해 보세요!
플렉스 아이템의 시각적 배치 순서를 지정할 수 있습니다.
selector {
    order: <integer>
    /* <integer>: 정수(소수점 불가) */
}
/* <integer>: 정수(소수점 불가) */
order: 0; /* 초깃값 */
order: -1;
order: 2;

/* 글로벌 값 */
order: inherit;
order: initial;
order: revert;
order: revert-layer;
order: unset;
<div class="flex-container">
    <a href="" class="item">Item-1</a>
    <a href="" class="item first-order-item">Item-2</a>
    <a href="" class="item">Item-3</a>
</div>
.flex-container {
    display: flex;
}
.first-order-item {
    order: -1; /* 마크업 순서와 상관없이 맨 처음에 배치됩니다. */
}
실제 적용된 모습
<div class="light-container" aria-hidden="true">
    <div class="light red-light"></div>
    <div class="light green-light"></div>
    <div class="light blue-light"></div>
</div>
.light-container {
    display: flex;
    align-items: center;
    gap: 1.5em;
    padding: 2em;
}

/* 공통 스타일 */
.light {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    animation-duration: 4s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

/* 빨간 조명 */
.red-light {
    background: #ff3b3b;
    box-shadow:
        0 0 20px #ff3b3b,
        0 0 50px #ff3b3b,
        0 0 90px #ff3b3b;
    animation-name: red-order-animation;
}

/* 초록 조명 */
.green-light {
    background: #00ff88;
    box-shadow:
        0 0 20px #00ff88,
        0 0 50px #00ff88,
        0 0 90px #00ff88;
    animation-name: green-order-animation;
}

/* 파란 조명 */
.blue-light {
    background: #3b82ff;
    box-shadow:
        0 0 20px #3b82ff,
        0 0 50px #3b82ff,
        0 0 90px #3b82ff;
    animation-name: blue-order-animation;
}

/* 빨간 조명의 순서 변경 */
@keyframes red-order-animation {
    0% {
        order: 1;
        transform: scale(1);
    }
    33% {
        order: 3;
        transform: scale(1.25);
    }
    66% {
        order: 2;
        transform: scale(0.85);
    }
    100% {
        order: 1;
        transform: scale(1);
    }
}

/* 초록 조명의 순서 변경 */
@keyframes green-order-animation {
    0% {
        order: 2;
        transform: scale(0.85);
    }
    33% {
        order: 1;
        transform: scale(1);
    }
    66% {
        order: 3;
        transform: scale(1.25);
    }
    100% {
        order: 2;
        transform: scale(0.85);
    }
}

/* 파란 조명의 순서 변경 */
@keyframes blue-order-animation {
    0% {
        order: 3;
        transform: scale(1.25);
    }
    33% {
        order: 2;
        transform: scale(0.85);
    }
    66% {
        order: 1;
        transform: scale(1);
    }
    100% {
        order: 3;
        transform: scale(1.25);
    }
}
실제 적용된 모습
<header class="header">
    <nav class="nav">
        <a href="">홈</a>
        <a href="">강의</a>
        <a href="" class="event-link">이벤트</a>
        <a href="">문의하기</a>
    </nav>
</header>
.nav {
    display: flex;
    gap: 1em;
}
.event-link {
    order: -1;
    font-weight: bold;
    color: crimson;
}