JSFiddle - React, Tailwind, and code Playground

by mizobata

HTML

<div class="calendar-container">
  <div class="calendar-row">
    <div class="calendar-header calendar-flex">
      <div><<</div>
      <div>yyyy/mm</div>
      <div>>></div>
    </div>
      <div class="calendar-row">
        <div class="calendar-day calendar-dayname calendar-flex">
          <div class="sun">Sun</div>
          <div>Mon</div>
          <div>Tue</div>
          <div>Wed</div>
          <div>Thu</div>
          <div>Fri</div>
          <div class="sat">Sat</div>
        </div>
        <div class="calendar-day calendar-flex">
          <div class="sun">1</div>
          <div>2</div>
          <div>3</div>
          <div>4</div>
          <div>5</div>
          <div>6</div>
          <div>7</div>
        </div>
        <div class="calendar-day calendar-flex">
          <div class="sun">8</div>
          <div>9</div>
          <div>10</div>
          <div>11</div>
          <div>12</div>
          <div>13</div>
          <div class="sat">14</div>
        </div>
        <div class="calendar-day calendar-flex">
          <div class="sun">15</div>
          <div>16</div>
          <div>17</div>
          <div>18</div>
          <div>19</div>
          <div>20</div>
          <div class="sun">21</div>
        </div>
        <div class="calendar-day calendar-flex">
          <div class="sun">22</div>
          <div>23</div>
          <div>24</div>
          <div>25</div>
          <div>26</div>
          <div>27</div>
          <div class="sat">28</div>
        </div>
        <div class="calendar-day calendar-flex">
          <div class="sun">29</div>
          <div>30</div>
          <div>31</div>
          <div></div>
          <div></div>
          <div></div>
          <div class="sat"></div>
        </div>
      </div>
    </div>
  </div>
</div>

CSS

body {
  background-color: #fff;
}

.calendar-flex {
  display: flex;
}
.calendar-row {
  display: flex;
  flex-direction: column;
}

.calendar-header {
  justify-content: center;
}

.calendar-container {
  width: 500px;
  height: 400px;
}

.calendar-container div {
  background-color: steelblue;
  margin: 1px 1px;
}

.calendar-row div {
  background-color: teal;
}

.calendar-day {
  justify-content: flex-start;
}

.calendar-dayname {
  height: 20px;
}

.calendar-day div {
  background-color: #fff;
  width: 80px;
  padding: 3px 3px;
}

.sun {
  color: red;
}

.sat {
  color: blue;
}

.today {
  background-color: green;
}

.selected {
  background-color: orange;
}