Build an Availability Table - Build an Availability Table

Tell us what’s happening:

I can`t pass 4,11,28,30,32 step .
I am trying to imatate the example…

Your code so far

<!-- file: index.html -->
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Availability Table</title>
    <link rel="stylesheet" href="../CSS5/Availability-Table.css" />
  </head>
  <body>
    <table id="availability-table">
      <thead>
        <tr class="date">
          <th></th>
          <th>Monday</th>
          <th>Tuesday</th>
          <th>Wednesday</th>
          <th>Thursday</th>
          <th>Friday</th>
          <th>Saturday</th>
        </tr>
      </thead>
      <tbody>
        <tr class="half">
          <td class="time">9 AM</td>
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-2"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
          <td class="available-5"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-5"></td>
          <td class="available-3"></td>
          <td class="available-4"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="half">
          <td class="time">10 AM</td>
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-4"></td>
          <td class="available-2"></td>
          <td class="available-4"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-1"></td>
          <td class="available-2"></td>
          <td class="available-1"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="half">
          <td class="time">11 AM</td>
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-1"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
          <td class="available-4"></td>
          <td class="available-0"></td>
          <td class="available-3"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="half">
          <td class="time">12 PM</td>
          <td class="available-3"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
          <td class="available-0"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-4"></td>
          <td class="available-2"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
          <td class="available-0"></td>
        </tr>
        <tr class="half">
          <td class="time">1 PM</td>
          <td class="available-2"></td>
          <td class="available-0"></td>
          <td class="available-5"></td>
          <td class="available-3"></td>
          <td class="available-5"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-2"></td>
          <td class="available-3"></td>
          <td class="available-0"></td>
          <td class="available-5"></td>
          <td class="available-3"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="half">
          <td class="time">2 PM</td>
          <td class="available-2"></td>
          <td class="available-5"></td>
          <td class="available-0"></td>
          <td class="available-3"></td>
          <td class="available-3"></td>
          <td class="available-2"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-0"></td>
          <td class="available-2"></td>
          <td class="available-5"></td>
          <td class="available-3"></td>
          <td class="available-5"></td>
        </tr>
        <tr class="half">
          <td class="time">3 PM</td>
          <td class="available-3"></td>
          <td class="available-2"></td>
          <td class="available-0"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-2"></td>
          <td class="available-4"></td>
          <td class="available-0"></td>
          <td class="available-5"></td>
          <td class="available-4"></td>
          <td class="available-3"></td>
        </tr>
        <tr class="half">
          <td class="time">4 PM</td>
          <td class="available-4"></td>
          <td class="available-2"></td>
          <td class="available-4"></td>
          <td class="available-0"></td>
          <td class="available-3"></td>
          <td class="available-5"></td>
        </tr>
        <tr class="sharp">
          <td class="available-0"></td>
          <td class="available-1"></td>
          <td class="available-1"></td>
          <td class="available-0"></td>
          <td class="available-3"></td>
          <td class="available-2"></td>
          <td class="available-4"></td>
        </tr>
        <tr class="sharp">
          <td class="time">5 PM</td>
        </tr>
      </tbody>
    </table>
    <div id="legend">
      <span>0</span>
      <div class="flex-col">
        <span>Availability</span>
        <div id="legend-gradient"></div>
      </div>
      <span>5+</span>
    </div>
  </body>
</html>
/* file: styles.css */
:root {
  --color0: #fff;
  --color1: #b7fbb7;
  --color2: #8dfc96;
  --color3: #5af867;
  --color4: #56ff4a;
  --color5: #0f8f01;
  --solid-border: solid;
  --dashed-border: dashed;
}

body {
  margin: 0;
  height: 100vh;
  overflow: hidden;
  background-color: rgb(203, 239, 218);
}

td {
  width: 6rem;
  height: 1rem;
}

.time {
  font-weight: bold;
  text-align: center;
  position: relative;
  top: -15px;
  right: -20px;
  font-size: 0.8rem;
}

.date th {
  font-size: 0.8rem;
}

.sharp td {
  border-left: 2px solid;
  border-right: 2px solid;
  border-bottom: 2px var(--solid-border);
}

.sharp td:first-of-type {
  border: 0;
  background:none;
}

.half td {
  border-top: 2px solid;
  border-left: 2px solid;
  border-right: 2px solid;
  border-bottom: 2px var(--dashed-border);
}

.half td:first-of-type {
  border: 0;
}

#availability-table {
  border-collapse: collapse;
  margin: 50px auto;
  position: relative;
  left: -25px;
}

#legend {
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-end;
  gap: 10px;
}

.flex-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#legend-gradient {
  border: 2px solid;
  width: 100px;
  height: 20px;
  background-image: linear-gradient(
    90deg,
    var(--color0) 0% 16%,
    var(--color1) 16% 32%,
    var(--color2) 32% 50%,
    var(--color3) 50% 66%,
    var(--color4) 66% 82%,
    var(--color5) 82% 96%
  );
}

.available-0 {
  background-color: var(--color0);
}

.available-1 {
  background-color: var(--color1);
}
.available-2 {
  background-color: var(--color2);
}
.available-3 {
  background-color: var(--color3);
}
.available-4 {
  background-color: var(--color4);
}
.available-5 {
  background-color: var(--color5);
}

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36

Challenge Information:

Build an Availability Table - Build an Availability Table

When you set a border, don’t you need the color, too? I personally would set the entire border shortcut as the value for --solid-border and --dashed-border.

th elements in the first column should have the class of time

Doesn’t this imply that the first column in each row should be a th element?

The tests are probably expecting the Availability span to be the first child of #legend.

1 Like

Thanks! I will correct myself!