<div class="container">
  <ul class="wrapper">
    <li>Item One</li>
    <li>Item Two</li>
    <li>Item Three</li>
    <li>Item Four</li>
    <li>Iten Five</li>
  </ul>
</div>

<form>
  <h2>更改writing-mode值</h2>
  <div class="control">
    <label for="writing-mode">writing-mode:</label>
    <select id="writing-mode">
      <option value="horizontal-tb">horizontal-tb</option>
      <option value="vertical-rl">vertical-rl</option>
      <option value="vertical-lr">vertical-lr</option>
    </select>
  </div>  
</form>  
@import 'https://fonts.googleapis.com/css?family=Share+Tech+Mono';

@import 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css';

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
    width: 100vw;
    min-height: 100vh;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    background-image: url('https://s3-us-west-2.amazonaws.com/s.cdpn.io/1376484/jess-harding-lqT6NAmTaiY-unsplash.jpg'),radial-gradient(#28a3dd, #0d7751);
    background-size: cover;
    background-position: center;
    font-family: "Share Tech Mono", monospace;
    background-blend-mode: multiply,screen, overlay;
    color: #fff;
}

h2{
  font-size: 2rem;
  text-align: center;
  text-shadow: .05em .05em .01em rgba(0,0,0,.5);
  margin-bottom: 2rem;
}

.container {
    position: relative;
    background-size: cover;
    background-position: center;
    backdrop-filter: blur(20px);
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 5px;
    padding:2vw;
    box-sizing: border-box;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    transition: .3s ease;
    margin: 1vw;
    color: #fff;
}

.wrapper {
  list-style: none outside none;
  position: relative;
  margin: 0;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 0.5em;
  color: rgb(71, 73, 84);
  display: grid;
  gap: 2vh;
  grid-template-columns: repeat(3, 1fr);
  
  
  li {
    list-style: none;
    padding: 1em;
    background: #fff;
    border: 1px solid currentColor;
    margin: 5px;
    border-radius: 5px;
    white-space: nowrap;
  }
  
  li + li {
    border-top: 1px solid currentColor;
  }
}



form {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  font-size: 14px;
  padding: 2vh;
  background: rgba(0,0,0,.8);
  
  h2 {
    font-size: 14px;
    margin-bottom: 3vh;
  }
  
  .control {
    display: grid;
    grid-template-columns: auto 1fr;
    margin-bottom: 10px;
    place-items: center;
    text-align: right;
    gap: 10px;
  }
  
  p {
    position: absolute;
    bottom: 10px;
    right: 10px;
    left: 10px;
    font-size: 12px;
    text-align: center;
  }
}

:root {
  --writing-mode: horizontal-tb;
}

.wrapper{
  writing-mode: var(--writing-mode);
  width: 60vw;
  height: 60vh;
}
View Compiled
const selectorEle = document.querySelector('#writing-mode')

selectorEle.addEventListener('change', e => {
  document.documentElement.style.setProperty('--writing-mode', e.target.value)
})
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.