JSFiddle - React, Tailwind, and code Playground

by adamschwartz

HTML

<div class="board">
  <div class="tile"></div>
  <div class="tile" optional></div>
</div>

CSS

.board, .tile {
  display: block;
  box-sizing: border-box;
}

.tile {
  height: 5em;
  width: 5em;
  color: #ccc;
  background: currentColor;
  border-radius: 1em;
  margin: 1em;
  cursor: pointer;
}

.tile[current] {
  color: red;
}

.tile[optional] {
  background: transparent;
  border: 1em solid;
}

JavaScript

const tiles = document.querySelectorAll('.tile')

tiles.forEach(tile => {
	tile.addEventListener('click', () => {
  	tiles.forEach(tile => tile.removeAttribute('current'))
    tile.setAttribute('current', '')
  }) 
})