Learn Intermediate CSS by Building a Picasso Painting - Step 20

Tell us what’s happening:
In this step we turn the black rectangle to a triangle and I don’t understand how that happens. This happens when I add in #white-hat the lines

border-right-color: transparent;
border-left-color: transparent;

I understand it has to do with the borders dimension, but I can’t wrap my head around it.
Any explanations?
Thanks!

  **Your code so far**
/* file: index.html */
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Picasso Painting</title>
  <link rel="stylesheet" href="./styles.css" />
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.2/css/all.css">
</head>
<body>
  <div id="back-wall"></div>
  <div class="characters">
    <div id="offwhite-character">
      <div id="white-hat"></div>
      <div id="black-mask">
        <div class="eyes left"></div>
        <div class="eyes right"></div>
      </div>
      <div id="gray-instrument">
        <div class="black-dot"></div>
        <div class="black-dot"></div>
        <div class="black-dot"></div>
        <div class="black-dot"></div>
        <div class="black-dot"></div>
      </div>
      <div id="tan-table"></div>
    </div>
  </div>
</body>
</html>
/* file: styles.css */
body {
background-color: rgb(184, 132, 46);
}

#back-wall {
background-color: #8B4513;
width: 100%;
height: 60%;
position: absolute;
top: 0;
left: 0;
z-index: -1;
}

#offwhite-character {
width: 300px;
height: 550px;
background-color: GhostWhite;
position: absolute;
top: 20%;
left: 17.5%;
}

#white-hat {
width: 0;
height: 0;
border-style: solid;
border-width: 0 120px 140px 180px;
border-top-color: transparent;
border-right-color: transparent;
border-left-color: transparent;
}
  **Your browser information:**

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

Challenge: Learn Intermediate CSS by Building a Picasso Painting - Step 20

Link to the challenge:

Ive been stuck on this as well but I think I finally understand and hope this helps you out. Paste this code and then play around with the width and height of the #white-hat element. I gave each border a different color so you can see whats happening. Basically, where the borders touch each other they make a 45 degree angle just like a wooden picture frame would. When you take away the height and width of the #white-hat( which is a square shape) the 4 borders collapse into that empty space creating 4 triangles. You can adjust the border properties to get different kinds of triangles and then use the transparency property to hide certain triangles.

#white-hat {
width: 50;
height: 50;
border-style: solid;
border-width: 100px 100px 100px 100px ;
border-top-color: red;
border-right-color: green;
border-bottom-color: blue;
border-left-color: yellow;
}

Thanks that was very helpful!
I also found this video on youtube

1 Like

Great video. I really like that guy.