Build a Book Inventory App - Build a Book Inventory App

Tell us what’s happening:

I feel like I’m missing something. I keep getting errors for steps 19-28 even though I have the required selectors.

Your code so far

<!-- file: index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <title>Book Inventory</title>
  <link rel="stylesheet" href="styles.css" />
</head>
<body>
  <h1>Book Inventory</h1>

  <table>
    <thead>
      <tr>
        <th>Title</th><th>Author</th><th>Category</th><th>Status</th><th>Rate</th>
      </tr>
    </thead>
    <tbody>
      <tr class="read">
        <td>The Great Gatsby</td>
        <td>F. Scott Fitzgerald</td>
        <td>Classic</td>
        <td><span class="status">Read</span></td>
        <td><span class="rate three"><span></span><span></span><span></span></span></td>
      </tr>

      <tr class="to-read">
        <td>Dune</td>
        <td>Frank Herbert</td>
        <td>Science Fiction</td>
        <td><span class="status">To Read</span></td>
        <td><span class="rate one"><span></span><span></span><span></span></span></td>
      </tr>

      <tr class="in-progress">
        <td>Becoming</td>
        <td>Michelle Obama</td>
        <td>Memoir</td>
        <td><span class="status">In Progress</span></td>
        <td><span class="rate two"><span></span><span></span><span></span></span></td>
      </tr>
    </tbody>
  </table>
</body>
</html>

/* file: styles.css */
tr[class~="read"] {
  background-image: linear-gradient(90deg, #e8f8f0, #c9f0da);
}
tr[class~="to-read"] {
  background-image: linear-gradient(90deg, #fff6d6, #ffe8a3);
}
tr[class~="in-progress"] {
  background-image: linear-gradient(90deg, #e8f0ff, #c3d7ff);
}

span { 
  display: inline-block; 
}

tr[class~="to-read"] span[class~="status"] {
  border: 1px solid #c7a200;
  background-image: linear-gradient(#fff7d6, #ffeaa0);
}
tr[class~="read"] span[class~="status"] {
  border: 1px solid #3aa76d;
  background-image: linear-gradient(#ecfff3, #c7f0d8);
}
tr[class~="in-progress"] span[class~="status"] {
  border: 1px solid #3a6ea7;
  background-image: linear-gradient(#eef6ff, #cfe2ff);
}

span[class~="status"],
span[class^="rate"] {
  height: 20px;
  width: 60px;
  padding: 4px 6px;
}

span[class^="rate"] > span {
  border: 1px solid #999;
  border-radius: 50%;
  margin: 0 2px;
  height: 10px;
  width: 10px;
  background-color: #fff;
}

span[class~="one"] span:nth-child(1) {
  background-image: linear-gradient(180deg, #ffd8a8, #ffa94d);
}

span[class~="two"] span:nth-child(-n+2) {
  background-image: linear-gradient(180deg, #ffd8a8, #ffa94d);
}

span[class~="three"] span {
  background-image: linear-gradient(180deg, #ffd8a8, #ffa94d);
}

Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36

Challenge Information:

Build a Book Inventory App - Build a Book Inventory App

Not quite. What does ~= mean in an attribute selector?

I figured it out! Thank you for the catch!