I am trying to create this as a gradient.
I have a circle here, how do I create a right triangle gradient to place in the middle of the circle?
.play {
-webkit-appearance: none;
appearance: none;
box-sizing: border-box;
margin: 0;
padding: 0;
width: 90px;
height: 90px;
cursor: pointer;
/*background:
linear-gradient(green 0 0),
linear-gradient(green 0 0)
blue;*/
background-size:7px 100%,100% 7px;
background-position:center;
background-repeat:no-repeat;
border: 9px solid red;
border-radius: 50%;
transform: rotate(45deg);
}
<button class="play" type="button" aria-label="Close"></button>
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" frameborder="0"></iframe>
CodePudding user response:
Use a conic-gradient
.play {
-webkit-appearance: none;
appearance: none;
box-sizing: border-box;
margin: 0;
padding: 0;
width: 90px;
height: 90px;
cursor: pointer;
background: conic-gradient(from -135deg at right,red 90deg,#0000 0) 55% 50%/22px 44px no-repeat;
border: 9px solid red;
border-radius: 50%;
}
<button class="play" type="button" aria-label="Close"></button>
<iframe name="sif2" sandbox="allow-forms allow-modals allow-scripts" frameborder="0"></iframe>
CodePudding user response:
HTML
<button class="play" type="button" aria-label="Close">
<div id="triangle-right"></div>
</button>
CSS
.play {
-webkit-appearance: none;
appearance: none;
box-sizing: border-box;
margin: 0;
padding: 0;
width: 90px;
height: 90px;
cursor: pointer;
/*background:
linear-gradient(green 0 0),
linear-gradient(green 0 0)
blue;*/
background-size:7px 100%,100% 7px;
background-position:center;
background-repeat:no-repeat;
border: 9px solid red;
border-radius: 50%;
transform: rotate(0deg);
}
#triangle-right {
width: 0;
height: 0;
border-top: 20px solid transparent;
border-left: 20px solid red;
border-bottom: 20px solid transparent;
margin-left: 30px;
}
Here is working demo https://jsfiddle.net/rgn8wsbj/