<p>Вибери потрібне значення для <code>align-direction</code>:</p>

<select id="form">
  <option value="row" name="value" selected>row</option>
  <option value="row-reverse" name="value">row-reverse</option>
  <option value="column" name="value">column</option>
  <option value="column-reverse" name="value">column-reverse</option>
</select>

<p id="text"></p>

<hr>

<div class="layout">
  <header>
    <h4>Simple website</h4>
  </header>
  <main>
    <nav>
      <a href="#">Item 1</a>
      <a href="#">Item 2</a>
      <a href="#">Item 3</a>
      <a href="#">Item 4</a>
    </nav>
    <section id="wrapper">
      <div class="child child-1">1</div>
      <div class="child child-2">2</div>
      <div class="child child-3">3</div>
    </section>
  </main>
  <footer>
    &copy; 2017
  </footer>
</div>
* {
  box-sizing: border-box;
  padding: 0;
}

body {
  text-align: center;
  font-family: momospace;
  font-size: 17px;
  line-height: 1.5;
  color: #222;
}

#form {
  padding: 8px 16px;
  font-size: 19px;
}

header {
  line-height: 75px;
  text-align: center;
  text-transform: uppercase;
  background-color: #808080;
  color: #f9f9f9;
}

main {
  display: flex;
}

nav {
  width: 30%;
  background-color: yellow;
  padding: 16px;
}

nav a {
  display: block;
  margin-bottom: 16px;
  text-align: left;
  text-decoration: none;
  color: #151515;
}

#wrapper {
  background-color: #eee;
  
  display: flex;
  
  padding: 16px;
  flex: 1;
}

.child {
  width: 25%;
  color: #f1f1f1;
  font-weight: 700;
  border-radius: 4px;
  background-color: #444;
  border: 4px solid #666;
  margin: 5px;
}

footer {
  line-height: 50px;
  background-color: #000;
  color: #f1f1f1;
  margin-top: 16px;
}
var wrapper = document.getElementById('wrapper');
var form = document.getElementById('form');
var text = document.getElementById('text');

  var textArray = {'row': 'Контейнери будуть розташовані зліва направо. Якщо значення dir задано як rtl, то напрямок буде справа наліво. За замовчуванням.',
                   'row-reverse': 'Теж саме, що і row, але в зворотному порядку.',
                   'column': 'Флекс елементи відображаються у вигляді стовпчика. Стовпчик формується зверху вниз.',
                   'column-reverse': 'Теж саме, що і column, але знизу вверх.'};

form.onchange = function() {
  for (var i = 0; i < form.options.length; i++) {
    if (form.options[i].selected == true) {
      wrapper.style.flexDirection = form.options[i].value;
      text.innerHTML = textArray[form.options[i].value];
    }
  }
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.