メリットは質問者さんがデメリットと感じているHTMLを書き換えないで順序の変更が出来ることでしょう。
HTMLを書き換えるということは、出来上がっている文章を並び替えるということです。並び替えた後の文章構造は福笑い状態ですよね。HTMLを見た目のために書き換えるのはあまり良いことではありません。
レスポンシブでPCとスマホで順序の変更をしたいとき、order
を用いるのが最も簡単な方法だと思います。
また、デザイン上で視線を左右に振る(奇数行は画像右テキスト左・偶数行は画像左テキスト右)ような場合order
を用いることで簡単に実装できます。
html
1<section>
2 <img src="#" alt="">
3 <div class="body">
4 テキストは左
5 </div>
6</section>
7
8<section>
9 <img src="#" alt="">
10 <div class="body">
11 テキストは右
12 </div>
13</section>
14
15<section>
16 <img src="#" alt="">
17 <div class="body">
18 テキストは左
19 </div>
20</section>
css
1section {
2 display: flex;
3}
4img, .body {
5 width: 50%;
6}
7section:nth-of-type(odd) .body {
8 order: 1;
9}
例えば上記のコードでsection
が中間に追加になった場合、cssでclass="left"
とかclass="right"
とかで指定してしまうと、class
を書き換える手間が発生します。またミスをする可能性も出てきます。
目先のことではなく先を見据えてどっちが手間か考えると、order
は便利で使い勝手のあるプロパティだと思います。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。